basic binary functions added