http://michele.usc.edu/java/acidbase/acidbase.html