new key value extract method