everything working, WORKING COPY