HERE IT IS......(sorry, long)