アダプタ系インタフェースを抽象クラスへ。Output 等は Adapter からの生成のみで再利用性がないため、内部クラスとして定義。