add business logic and replication