Some re-working.