flatMap ってなんだろ〜って思ってドキュメント見に行っても
func flatMap<SegmentOfResult>(_ transform: (Self.Element) throws -> SegmentOfResult) rethrows -> [SegmentOfResult.Element] where SegmentOfResult : Sequence
って定義されてるけどこれってどうやって読むんじゃ〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜って状態から、なるほどそういうことねって理解できるようになるための考え方.