\begin{filecontents}{ex_test.sty}
% Nội dung của ex_test.sty
\end{filecontents}
\documentclass[12pt,a4paper,onecolumn,titlepage,openany,twoside]{article}
\usepackage[utf8]{vietnam}
\usepackage{amsmath,amssymb,yhmath,mathrsfs,esvect,fontawesome,xcolor}
\usepackage{changepage}
\strictpagecheck
\usepackage{enumerate}
\def\H{\bfseries\fontfamily{pag}\selectfont}
\def\mau{magenta}
% \def\mau{tral!60!black}% Màu form
\def\topset{0.3} %kc giữa đáy header và vùng vb
\def\botset{0.3} %kc giữa đỉnh footer và vùng vb
\def\tren{1.5}\def\duoi{1.5}\def\trai{1.5}\def\phai{1.5}
\usepackage[top=\tren cm, bottom=\duoi cm, left=\trai cm, right=\phai cm]{geometry}
% \usepackage[dethi]{ex_test}
\usepackage[loigiai]{ex_test}
%%%%%%%%%%%%% Thông tin tiêu đề
\def\duoitrai{\faFacebookSquare\, Nguyễn Hữu Phức}
\def\duoiphai{Mr.Phúc Math}
\usepackage[most]{tcolorbox}
\usepackage{fancyhdr}
\usepackage{titletoc,titlesec,eso-pic}
\usepackage{tkz-euclide}
\usepackage{setspace}
\setstretch{1.35}
\usepackage{tikz-3dplot}
\usepackage{tikz}
\usepackage{tkz-tab}
\usetikzlibrary{shapes,shapes.geometric,arrows,calc,intersections,angles,patterns,arrows,decorations.pathmorphing,backgrounds,positioning,fit,petri,shapes.symbols,matrix,tikzmark}
\usetikzlibrary{positioning,decorations.text,decorations.pathmorphing}% Để uốn cong văn bản
\usetikzlibrary{shadings,fadings} %ĐỔ BÓNG
\tikzfading[name=fade out, inner color=transparent!0,outer color=transparent!100]
\tikzfading[name=fade left, top color=transparent!0,bottom color=transparent!0,middle color=transparent!100]
\tikzfading[name=fade right,left color=transparent!0,right color=transparent!100]
%Lệnh viết tắt
\newcommand{\hoac}[1]{\left[\begin{aligned}#1\end{aligned}\right.}
\newcommand{\heva}[1]{\left\{\begin{aligned}#1\end{aligned}\right.}
\everymath{\displaystyle}
%%%%%%%%%%%%
\renewtheorem{ex}{\H\color{\mau}Câu}
\newtheorem{vd}{\H\color{\mau}Ví dụ}
\newtheorem{bt}{\H\color{\mau} Bài}
\def\loigiaiEX{\tikz[]{
\draw (0,0)++(0.5*\textwidth,0) node[inner sep=0pt] {\H\color{\mau}\strut\faEdit\ Lời giải.};}\vspace*{-2mm}}
\def\qedEX{\color{\mau}\ensuremath{\square}}
%%%%%%% Đn lại A.B.C.D
\renewcommand*\circled[1]{\tikz[baseline=(char.base)]{
\node[shape=circle,draw=\mau,fill=\mau,inner sep=1pt] (char) {#1};}}
\renewcommand{\TrueEX}{\stepcounter{dapan}{\circEX{\textbf{\H\color{white}\Alph{dapan}}}} \ignorespaces}
\renewcommand{\FalseEX}{\stepcounter{dapan}{\circled{\textbf{\H\color{white}\Alph{dapan}}}} \ignorespaces}
%---Chọn đáp án
\renewcommand*\circEX[1]{\tikz[baseline=(char.base)]{\node[shape=circle,draw=red,inner sep=1pt,fill=red] (char) {\bf\H\color{white} #1};}}
%%%%%%%
\renewcommand{\baselinestretch}{1.4}
\renewenvironment{center}{\parskip=0pt\par\nopagebreak\centering}{\par\noindent\ignorespacesafterend}
%%%%%%%
%--In đáp án
\newtcbox{\tbhbox}{on line, arc=2pt, arc is angular, colback=white, colframe=\mau, before upper={\rule[-3pt]{0pt}{10pt}}, boxrule=1pt, boxsep=0pt, left=2pt, right=2pt, top=2pt, bottom=.5pt}
\renewcommand{\inputansbox}[2]{
\renewenvironment{Solution}[1]{\begin{lrbox}{\myboxans}\begin{minipage}{\linewidth/#1-4\fboxsep}\parbox[b]{0.55\linewidth}{\fontfamily{pag}\selectfont\bfseries\color{\mau}##1.}\bf\color{red}\fontfamily{pag}\selectfont}{\end{minipage}\end{lrbox}\tbhbox{\usebox{\myboxans}}}
\begin{flushleft}
\input{#2}
\end{flushleft}
}
\newcommand{\indapan}[2]{
\begin{center}
\begin{tikzpicture}
\node[thick,scale=1,fill=white,draw=\mau,minimum width=3.5cm,minimum height=0.05cm,rounded corners=2mm]{\H\color{\mau} BẢNG ĐÁP ÁN};
\end{tikzpicture}
\end{center}
\inputansbox{#1}{#2}
}
\usepackage[most]{tcolorbox}
\usepackage{lastpage}
\usepackage{fancyhdr}
\renewcommand{\footrulewidth}{0pt}
\renewcommand{\headrulewidth}{0pt}
%========== renewdotlinefullex ================
\renewcommand{\dotlinefull}[1]{
\renewcommand{\FalseEX}{\stepcounter{dapan}{\circled{\textbf{\H\color{\mau}\Alph{dapan}}}}.}
\renewcommand{\TrueEX}{\stepcounter{dapan}{\circled{\textbf{\H\color{\mau}\Alph{dapan}}}}.}
\def\True{\setcounter{numTrue}{\thedapan}\setcounter{numTrueSol}{\thedapan}}
\AtBeginEnvironment{#1}{
\renewcommand{\loigiai}[1]{
\setlength{\paroutindent}{\expandafter\parindent}
\setbox0=\vbox{\hbox{\noindent\begin{minipage}{\linewidth-1cm}
\setlength{\parindent}{\paroutindent}##1\end{minipage}}
}
\linepar=\ht0
\pgfmathparse{round((\linepar-\fboxsep)/(\lineheight))}
\par\noindent\textbf{\loigiaiEX }
\renewcommand{\baselinestretch}{3}{\bf\color{\mau}\tiny\dotlineEX{\pgfmathresult}}
}
}
}
\everymath{\displaystyle}
\usepackage{lipsum}
%%%HEADER AND FOOTER
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhead[RE]{}
\fancyhead[LE]{\rightmark}
\fancyhead[LO]{}
\fancyhead[RO]{\rightmark}
\cfoot{}
\usepackage{eso-pic}
\AddToShipoutPicture{
\ifodd\thepage
\begin{tikzpicture}[overlay,remember picture]
\path ($(current page.south east)+(135:1.5)$) node[path fading=fade out,fill=\mau!65,minimum size=15pt,double,inner sep=4pt,
regular polygon, regular polygon sides=6,shape border rotate=60,font=\H](char){\thepage\;}
node[minimum size=15pt,inner sep=4pt,
regular polygon, regular polygon sides=6,shape border rotate=60,font=\H](A){\thepage\;};
\path ($(current page.south west)+(45:1.5)+(0.75,-3pt)$) node[anchor=west] (B)%
{\color{\mau}{\H\, \duoitrai}};
\draw[thick,\mau] ($(A.west)-(0.05,0)$)--($(B.east)+(0,3pt)$);
\end{tikzpicture}
\else
\begin{tikzpicture}[overlay,remember picture]
\path ($(current page.south west)+(45:1.5)$)
node[path fading=fade out,fill=\mau!65,minimum size=15pt,inner sep=4pt,
regular polygon, regular polygon sides=6,shape border rotate=60,font=\H] (char){\thepage\;}
node[minimum size=15pt,inner sep=4pt,
regular polygon, regular polygon sides=6,
shape border rotate=45,font=\H](A){\thepage\;};
\path ($(current page.south east)+(135:1.5)-(0.75,3pt)$) node[anchor=east] (B)%
{\color{\mau}{\H\, \duoiphai}};
\draw[thick,\mau] ($(A.east)+(0.05,0)$)--($(B.west)+(0,3pt)$);
\end{tikzpicture}
\fi
}
\begin{document}
\end{document}