WIP: make public_interface configurable