add primitive layer