using the std:: prefix now, seems like the accepted way & looks cleaner, renamed SIGN macro to FAST_SIGN for clarity, removed mid method (don't need it)