add gs some logic