substantially re-written setup file