add external method