first modification on basic firefly code