I hope its not too confusing. I figure it should work while still allowing the program to run relatively fast. Any thoughts?