fix #168: implement link method