nearly finished; only text overflow problem to fix