functioning version tested in live asl-project.