Matched constructor