add procedure & proxy