refactor interface systempropery