object too early. So that could be the problem of making the invariant field changed from null to some pointer, thus access violatoin --