generate properties