Let $ABCD$ be a parallelogram. Let $G$ and $H$ be the feet of the altitudes from $A$ to $CD$ and $BC$, respectively. If $AD = 15$, $AG = 12$, and $AH = 16$, find the length of $AB$.

Let's think step by step and output the final answer within \boxed{}.
user