PassThroughCode refactoring and create PassThrough Core and API for enhace reusability

We don't need to check whether info is enabled