Add support non public property
Simplify sync implementation