final draft.  still broken ;(