create shapefactory