Abstract Direct Method