starting to implement boundary exchange