\documentclass[a4paper, 12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1, T2A]{fontenc}
\usepackage[english, ukrainian]{babel}

\usepackage{amsmath, amssymb}
\usepackage{multicol}
\usepackage{graphicx}
\usepackage{float}
\usepackage{longtable}

\allowdisplaybreaks
\setlength\parindent{0pt}
\numberwithin{equation}{subsection}

\usepackage[unicode=true,colorlinks=true,linktoc=all,linkcolor=blue, pdfencoding=auto]{hyperref}
\usepackage{bookmark}

\numberwithin{equation}{subsection}

\renewcommand{\bf}[1]{\textbf{#1}}
\renewcommand{\it}[1]{\textit{#1}}
\newcommand{\bb}[1]{\mathbb{#1}}
\renewcommand{\cal}[1]{\mathcal{#1}}

\renewcommand{\epsilon}{\varepsilon}
\renewcommand{\phi}{\varphi}

\DeclareMathOperator{\grad}{grad}
\DeclareMathOperator{\divergence}{div}
\DeclareMathOperator{\rot}{rot}

\DeclareMathOperator{\diam}{diam}
\DeclareMathOperator{\real}{Re}
\DeclareMathOperator{\rang}{rang}
\DeclareMathOperator{\supp}{supp}
\DeclareMathOperator{\const}{const}
\DeclareMathOperator{\sign}{sign}

\newenvironment{system}{%
  \begin{equation}%
    \left\{%
      \begin{aligned}%
}{%
      \end{aligned}%
    \right.%
  \end{equation}%
}
\newenvironment{system*}{%
  \begin{equation*}%
    \left\{%
      \begin{aligned}%
}{%
      \end{aligned}%
    \right.%
  \end{equation*}%
}

\newenvironment{nalign}{%
  \begin{equation}%
      \begin{aligned}%
}{%
      \end{aligned}%
  \end{equation}%
}
\newenvironment{nalign*}{%
  \begin{equation*}%
      \begin{aligned}%
}{%
      \end{aligned}%
  \end{equation*}%
}

\makeatletter
\newcommand*{\relrelbarsep}{.386ex}
\newcommand*{\relrelbar}{%
  \mathrel{%
    \mathpalette\@relrelbar\relrelbarsep%
  }%
}
\newcommand*{\@relrelbar}[2]{%
  \raise#2\hbox to 0pt{$\m@th#1\relbar$\hss}%
  \lower#2\hbox{$\m@th#1\relbar$}%
}
\providecommand*{\rightrightarrowsfill@}{%
  \arrowfill@\relrelbar\relrelbar\rightrightarrows%
}
\providecommand*{\leftleftarrowsfill@}{%
  \arrowfill@\leftleftarrows\relrelbar\relrelbar%
}
\providecommand*{\xrightrightarrows}[2][]{%
  \ext@arrow 0359\rightrightarrowsfill@{#1}{#2}%
}
\providecommand*{\xleftleftarrows}[2][]{%
  \ext@arrow 3095\leftleftarrowsfill@{#1}{#2}%
}
\makeatother

\newcommand{\NN}{\mathbb{N}}
\newcommand{\ZZ}{\mathbb{Z}}
\newcommand{\QQ}{\mathbb{Q}}
\newcommand{\RR}{\mathbb{R}}
\newcommand{\CC}{\mathbb{C}}

\newcommand{\Max}{\displaystyle\max\limits}
\newcommand{\Sup}{\displaystyle\sup\limits}
\newcommand{\Sum}{\displaystyle\sum\limits}
\newcommand{\Int}{\displaystyle\int\limits}
\newcommand{\Oint}{\displaystyle\oint\limits}
\newcommand{\Iint}{\displaystyle\iint\limits}
\newcommand{\Iiint}{\displaystyle\iiint\limits}
\newcommand{\Lim}{\displaystyle\lim\limits}

\newcommand{\Bigcup}{\displaystyle\bigcup\limits}
\newcommand{\Bigsqcup}{\displaystyle\bigsqcup\limits}
\newcommand{\Bigcap}{\displaystyle\bigcap\limits}
\newcommand{\Bigsqcap}{\displaystyle\bigsqcap\limits}

\usepackage{esint}
\newcommand{\Oiint}{\displaystyle\oiint\limits}
\newcommand{\Oiiint}{\displaystyle\oiiint\limits}

\newcommand*\diff{\mathop{}\!\mathrm{d}}

\newcommand*\rfrac[2]{{}^{#1}\!/_{\!#2}}

\usepackage{array}
\newcolumntype{L}[1]{>{\raggedright\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}
\newcolumntype{C}[1]{>{\centering\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}
\newcolumntype{R}[1]{>{\raggedleft\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}

\newcommand{\oG}{\overline{G}}
\newcommand{\CoG}{C\left(\oG\right)}
\newcommand{\CoGoG}{C\left(\oG\times\oG\right)}

\usepackage{bm}

\newcommand{\vecf}[1]{{\vec{\mathbf{#1}}}} % vector-field or vector-function

\let\oldlangle=\langle
\renewcommand{\langle}{\left\oldlangle}
\let\oldrangle=\rangle
\renewcommand{\rangle}{\right\oldrangle}

% _s stands for "safe"
\makeatletter
\newcommand{\seqref}[1]{%
  \@ifundefined{r@eq:#1}{%
    (\textcolor{blue}{#1})%
  }{%
    \eqref{eq:#1}%
  }%
}
\makeatother

% _s stands for "safe"
\makeatletter
\newcommand{\sthref}[1]{%
  \@ifundefined{r@th:#1}{%
    \textcolor{blue}{#1}%
  }{%
    \ref{th:#1}%
  }%
}
\makeatother