\begin{tikzpicture}
    \tkzSetUpPoint[shape=circle,size=10,color=black,fill=black]
    \tkzSetUpLine[line width=1]
    \tkzDefPoints{0/0/A, 3/0/B, 2/2/C}
    \tkzDefPoints{0/2/Phelper, 1.75/2.5/PaboveLeft, 2.5/2.5/PaboveRight}
    \tkzMarkAngle[arc=l,size=0.7cm,color=red,fill=red!20](B,A,C)
    \tkzMarkAngle[arc=ll,size=0.7cm,color=orange,fill=orange!20](C,B,A)
    \tkzMarkAngle[arc=lll,size=0.7cm,color=green,fill=green!20](A,C,B)
    \tkzMarkAngle[arc=l,size=0.7cm,color=red,fill=red!20](Phelper,C,A)
    \tkzMarkAngle[arc=ll,size=0.7cm,color=orange,fill=orange!20](PaboveLeft,C,Phelper)
    \tkzDefLine[parallel=through C](A,B) \tkzGetPoint{Phelper2}
    \tkzMarkAngle[arc=l,size=0.7cm,color=red,fill=red!20](Phelper2,C,PaboveRight)
    \tkzLabelAngle[pos=0.4](Phelper2,C,PaboveRight){$\alpha'$}
    \tkzLabelAngle[pos=-0.4](Phelper,C,A){$\alpha''$}
    \tkzLabelAngle[pos=0.4](B,A,C){$\alpha$}
    \tkzLabelAngle[pos=0.4](C,B,A){$\beta$}
    \tkzLabelAngle[pos=0.4](PaboveLeft,C,Phelper){$\beta'$}
    \tkzLabelAngle[pos=0.4](A,C,B){$\gamma$}
    \tkzDrawLine(A,B)
    \tkzDrawLine[add=0.2 and 0.4](A,C)
    \tkzDrawLine[add=0.2 and 0.4](B,C)

    \node at ($(A)+(-0.47,-0.2)$)  {$A$};
    \node at ($(B)+(0.35,-0.2)$)  {$B$}; % \tkzLabelPoint[below](B){$B$} is not accurate enough
    \node at ($(C)+(0.05,0.3)$)  {$C$};
    \tkzDrawLine[add=0.6 and -0.1](C, Phelper2)
    %\tkzMark[mark=||](C, PaboveRight)
    %\tkzLabelLine[pos=0.8,below](A,B){$c$}
    \tkzDrawPoints(A,B,C)
    \tkzLabelSegment[pos=0.7,below](C,Phelper2){$g$}
    \tkzMarkSegments[mark=||](A,B C,Phelper2)
\end{tikzpicture}
