proper implementare