func squares<T1: Numeric, T2: Numeric>(of values: (T1, T2)) -> (T1, T2) { // T1とT2がXに束縛できるか静的にチェック values.map { <X: Numeric> (a: X) in x * x } }
$0
func