code improvement; free user restriction