incorporate @airportyh feedback