ireally need to stop working on this ...