properties logic moved entirelly under a package