allow arbitrary number of conv layers