scafolding implementation
merge