renamed some property and callback name to make it more readabl