# Pushout commutative diagram

Can someone explain to me this command right above the document command step by step:

\documentclass{article}

\usepackage{amssymb,amsmath}
\usepackage{xypic}
\usepackage[czech]{babel}
\newcommand{\pullbackcorner}[1][dl]{\save*!/#1-1pc/#1:(1,-1)@^{|-}\restore}

\begin{document}
$$\xymatrix@=3pc{ & & D \\ B \ar[r]\ar@/^/[rru]^{h} & P \ar[ru] \pullbackcorner & \\ A \ar [u]^f \ar[r]_g & C \ar[u]\ar@/_/[ruu]_{k} & }$$
\end{document}


It works as it should but I do not follow HOW.

• Welcome to TeX.se. Please don't post code fragments. Instead put the fragment into a compilable minimal document so that people can see exactly what you're doing. You can format code selecting it and clicking on the {} icon. (Unrelated, but you shouldn't use $$...$$ in LaTeX). – Alan Munn Jun 2 at 14:31
• Why should not I use $$....$$ in LaTeX? It works fine. – user2925716 Jun 2 at 14:41
• Sorry for my confusions, my Q. is now as is intended to be. – user2925716 Jun 2 at 14:43
• @user2925716 See this link of the very good user Sigur: tex.stackexchange.com/questions/362760/… – Sebastiano Jun 2 at 14:44