make more flexbile