public abstract class MusicElement{ public abstract int Duration{ get; } public abstract MusicElement Transpose(int levels); public abstract TimedNote[] Linearize(int startTime); }