initial proxy implementation and etc