刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦刻苦(记住本站网址,Www.XS52.info,方便下次阅读,或且百度输入“ xs52 ”,就能进入本站)