working with main calsses, and init()