??????????????????????????????????????????????????????????????????????????????????????????????????????? ??????????????????????????????????????????????? ?????????? ?????????????????????????????????????????????? ?????????????????????????????????????????????????????????????????????????????? ??????? ?????? ???????? {?????????????????????????????