??????????????????????????????????????????????????? ??????????????? ???????????????????? ????? solution ??????????????????????????? ???????????????????????? ?????????????????????????????????????????????????????????? ?????????????????????????????????????? ??????????????????????????????????????????????????????????????????????????????????? ???????????