add design patter: proxy