extracted king method