refactored bindings