add base abstract file