질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8질8long8