implement initialization callback