Every member of an organization has a benefit package.
The benefit package consists of a retirement benefit and a health benefit.
There are two types of each benefit: basic and premium:
For example, a basic benefit package consists of a basic health benefit and a basic retirement benefit.
A premium benefit package consists of a premium health benefit and a premium retirement benefit.
A temporary member might have a benefit package consisting of a basic retirement benefit and a premium health benefit.
A member with a spouse who is also a member might have a premium retirement benefit and a basic health benefit.
Implement the above in Java.
Show how you would use the Abstract Factory Pattern to implement the BenefitPackage constructor.