闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲闲!