moved alchemy implementation to separate solution