abstract circuit path design