@gregjava: It's not easy.