chenged __init__