aparence and init functions