abstract class ClassePaiBuilder<T> where T : ClassePaiBuilder<T> {
public T SetAtributo(string atributo) {
class ClasseFilhaBuilder : ClassePaiBuilder<ClasseFilhaBuilder> {
public ClasseFilhaBuilder SetOutroAtributo(string outroAtributo) {
.SetAtributo("atributo da classe pai")
.SetOutroAtributo("atributo da classe filha")