i can't comment on your question yet :(
you have here a a situation similar to yours being discussed:
Github