Gamma(.., ..)^2 -> generalized_gamma(?, ?, ?)

Two versions were discussed in this thread. Which one do you recommend? S1 or S2 (Lawless)?