Added better implementations and standardized syntax