add cast init