In memory implementation