merging with sf version