The Structure Of Approximate Groups