separate javascript protocol