helper as boundary