Updated with changes to our needs.