infrastructure for the components agnostically