In the Hilbert proof system for predicate logic, prove that the formula:
$\exists x~\big(B(x)\to C(x)\big)\to\big(\forall x~B(x)\to\exists x~C(x)\big)$
I'm awful with Hilbert Proofs and have no idea where to even start with this one. Any help would be greatly appreciated.