non-output related contracts done before function call
merged pre-contracts