updated with better syntax