Trying not to repeat myself, here is a question I have and ask already on stackoverflow

Author