Completes #18 ?