forked from: mercury ball

