trying js - will probably have to revert :p