writing core 2