committing some shared function
work