I didn't realise the load method could be called more than once. I've moved the creating of the proxy outside the load method