text:
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.25.0
// 	protoc        v3.15.6
// source: staff.proto

package proto

import (
	proto "github.com/golang/protobuf/proto"
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	reflect "reflect"
	sync "sync"
)

const (
	// Verify that this generated code is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
	// Verify that runtime/protoimpl is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)

// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4

type RegisterRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Id   string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Addr string `protobuf:"bytes,2,opt,name=addr,proto3" json:"addr,omitempty"`
}

func (x *RegisterRequest) Reset() {
	*x = RegisterRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_staff_proto_msgTypes[0]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *RegisterRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RegisterRequest) ProtoMessage() {}

func (x *RegisterRequest) ProtoReflect() protoreflect.Message {
	mi := &file_staff_proto_msgTypes[0]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RegisterRequest.ProtoReflect.Descriptor instead.
func (*RegisterRequest) Descriptor() ([]byte, []int) {
	return file_staff_proto_rawDescGZIP(), []int{0}
}

func (x *RegisterRequest) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *RegisterRequest) GetAddr() string {
	if x != nil {
		return x.Addr
	}
	return ""
}

type RegisterReply struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Addr    string `protobuf:"bytes,1,opt,name=addr,proto3" json:"addr,omitempty"`
	Subject string `protobuf:"bytes,2,opt,name=subject,proto3" json:"subject,omitempty"`
}

func (x *RegisterReply) Reset() {
	*x = RegisterReply{}
	if protoimpl.UnsafeEnabled {
		mi := &file_staff_proto_msgTypes[1]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *RegisterReply) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RegisterReply) ProtoMessage() {}

func (x *RegisterReply) ProtoReflect() protoreflect.Message {
	mi := &file_staff_proto_msgTypes[1]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RegisterReply.ProtoReflect.Descriptor instead.
func (*RegisterReply) Descriptor() ([]byte, []int) {
	return file_staff_proto_rawDescGZIP(), []int{1}
}

func (x *RegisterReply) GetAddr() string {
	if x != nil {
		return x.Addr
	}
	return ""
}

func (x *RegisterReply) GetSubject() string {
	if x != nil {
		return x.Subject
	}
	return ""
}

type ElectRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	StaffId string `protobuf:"bytes,1,opt,name=staff_id,json=staffId,proto3" json:"staff_id,omitempty"`
	TaskId  string `protobuf:"bytes,2,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
}

func (x *ElectRequest) Reset() {
	*x = ElectRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_staff_proto_msgTypes[2]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ElectRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ElectRequest) ProtoMessage() {}

func (x *ElectRequest) ProtoReflect() protoreflect.Message {
	mi := &file_staff_proto_msgTypes[2]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ElectRequest.ProtoReflect.Descriptor instead.
func (*ElectRequest) Descriptor() ([]byte, []int) {
	return file_staff_proto_rawDescGZIP(), []int{2}
}

func (x *ElectRequest) GetStaffId() string {
	if x != nil {
		return x.StaffId
	}
	return ""
}

func (x *ElectRequest) GetTaskId() string {
	if x != nil {
		return x.TaskId
	}
	return ""
}

type ElectReply struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Addr      string   `protobuf:"bytes,1,opt,name=addr,proto3" json:"addr,omitempty"`
	Subject   string   `protobuf:"bytes,2,opt,name=subject,proto3" json:"subject,omitempty"`
	LeaderId  string   `protobuf:"bytes,3,opt,name=leader_id,json=leaderId,proto3" json:"leader_id,omitempty"`
	WorkerIds []string `protobuf:"bytes,4,rep,name=worker_ids,json=workerIds,proto3" json:"worker_ids,omitempty"`
}

func (x *ElectReply) Reset() {
	*x = ElectReply{}
	if protoimpl.UnsafeEnabled {
		mi := &file_staff_proto_msgTypes[3]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ElectReply) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ElectReply) ProtoMessage() {}

func (x *ElectReply) ProtoReflect() protoreflect.Message {
	mi := &file_staff_proto_msgTypes[3]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ElectReply.ProtoReflect.Descriptor instead.
func (*ElectReply) Descriptor() ([]byte, []int) {
	return file_staff_proto_rawDescGZIP(), []int{3}
}

func (x *ElectReply) GetAddr() string {
	if x != nil {
		return x.Addr
	}
	return ""
}

func (x *ElectReply) GetSubject() string {
	if x != nil {
		return x.Subject
	}
	return ""
}

func (x *ElectReply) GetLeaderId() string {
	if x != nil {
		return x.LeaderId
	}
	return ""
}

func (x *ElectReply) GetWorkerIds() []string {
	if x != nil {
		return x.WorkerIds
	}
	return nil
}

type ClockinRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	StaffId string `protobuf:"bytes,1,opt,name=staff_id,json=staffId,proto3" json:"staff_id,omitempty"`
	TaskId  string `protobuf:"bytes,2,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
}

func (x *ClockinRequest) Reset() {
	*x = ClockinRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_staff_proto_msgTypes[4]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ClockinRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ClockinRequest) ProtoMessage() {}

func (x *ClockinRequest) ProtoReflect() protoreflect.Message {
	mi := &file_staff_proto_msgTypes[4]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ClockinRequest.ProtoReflect.Descriptor instead.
func (*ClockinRequest) Descriptor() ([]byte, []int) {
	return file_staff_proto_rawDescGZIP(), []int{4}
}

func (x *ClockinRequest) GetStaffId() string {
	if x != nil {
		return x.StaffId
	}
	return ""
}

func (x *ClockinRequest) GetTaskId() string {
	if x != nil {
		return x.TaskId
	}
	return ""
}

type ClockinReply struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *ClockinReply) Reset() {
	*x = ClockinReply{}
	if protoimpl.UnsafeEnabled {
		mi := &file_staff_proto_msgTypes[5]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ClockinReply) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ClockinReply) ProtoMessage() {}

func (x *ClockinReply) ProtoReflect() protoreflect.Message {
	mi := &file_staff_proto_msgTypes[5]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ClockinReply.ProtoReflect.Descriptor instead.
func (*ClockinReply) Descriptor() ([]byte, []int) {
	return file_staff_proto_rawDescGZIP(), []int{5}
}

type ClockoutRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	StaffId string `protobuf:"bytes,1,opt,name=staff_id,json=staffId,proto3" json:"staff_id,omitempty"`
	TaskId  string `protobuf:"bytes,2,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
}

func (x *ClockoutRequest) Reset() {
	*x = ClockoutRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_staff_proto_msgTypes[6]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ClockoutRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ClockoutRequest) ProtoMessage() {}

func (x *ClockoutRequest) ProtoReflect() protoreflect.Message {
	mi := &file_staff_proto_msgTypes[6]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ClockoutRequest.ProtoReflect.Descriptor instead.
func (*ClockoutRequest) Descriptor() ([]byte, []int) {
	return file_staff_proto_rawDescGZIP(), []int{6}
}

func (x *ClockoutRequest) GetStaffId() string {
	if x != nil {
		return x.StaffId
	}
	return ""
}

func (x *ClockoutRequest) GetTaskId() string {
	if x != nil {
		return x.TaskId
	}
	return ""
}

type ClockoutReply struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *ClockoutReply) Reset() {
	*x = ClockoutReply{}
	if protoimpl.UnsafeEnabled {
		mi := &file_staff_proto_msgTypes[7]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *ClockoutReply) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ClockoutReply) ProtoMessage() {}

func (x *ClockoutReply) ProtoReflect() protoreflect.Message {
	mi := &file_staff_proto_msgTypes[7]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ClockoutReply.ProtoReflect.Descriptor instead.
func (*ClockoutReply) Descriptor() ([]byte, []int) {
	return file_staff_proto_rawDescGZIP(), []int{7}
}

type Acknowledgement struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *Acknowledgement) Reset() {
	*x = Acknowledgement{}
	if protoimpl.UnsafeEnabled {
		mi := &file_staff_proto_msgTypes[8]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

func (x *Acknowledgement) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*Acknowledgement) ProtoMessage() {}

func (x *Acknowledgement) ProtoReflect() protoreflect.Message {
	mi := &file_staff_proto_msgTypes[8]
	if protoimpl.UnsafeEnabled && x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use Acknowledgement.ProtoReflect.Descriptor instead.
func (*Acknowledgement) Descriptor() ([]byte, []int) {
	return file_staff_proto_rawDescGZIP(), []int{8}
}

var File_staff_proto protoreflect.FileDescriptor

var file_staff_proto_rawDesc = []byte{
	0x0a, 0x0b, 0x73, 0x74, 0x61, 0x66, 0x66, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x05, 0x73,
	0x74, 0x61, 0x66, 0x66, 0x22, 0x35, 0x0a, 0x0f, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72,
	0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x61, 0x64, 0x64, 0x72, 0x18,
	0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x61, 0x64, 0x64, 0x72, 0x22, 0x3d, 0x0a, 0x0d, 0x52,
	0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x12, 0x0a, 0x04,
	0x61, 0x64, 0x64, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x61, 0x64, 0x64, 0x72,
	0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x07, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x22, 0x42, 0x0a, 0x0c, 0x45, 0x6c,
	0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x74,
	0x61, 0x66, 0x66, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x74,
	0x61, 0x66, 0x66, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x61, 0x73, 0x6b, 0x5f, 0x69, 0x64,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x22, 0x76,
	0x0a, 0x0a, 0x45, 0x6c, 0x65, 0x63, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x12, 0x0a, 0x04,
	0x61, 0x64, 0x64, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x61, 0x64, 0x64, 0x72,
	0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x07, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x65,
	0x61, 0x64, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c,
	0x65, 0x61, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x65,
	0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x77, 0x6f, 0x72,
	0x6b, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x44, 0x0a, 0x0e, 0x43, 0x6c, 0x6f, 0x63, 0x6b, 0x69,
	0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x73, 0x74, 0x61, 0x66,
	0x66, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x74, 0x61, 0x66,
	0x66, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x61, 0x73, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x22, 0x0e, 0x0a, 0x0c,
	0x43, 0x6c, 0x6f, 0x63, 0x6b, 0x69, 0x6e, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x45, 0x0a, 0x0f,
	0x43, 0x6c, 0x6f, 0x63, 0x6b, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
	0x19, 0x0a, 0x08, 0x73, 0x74, 0x61, 0x66, 0x66, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x07, 0x73, 0x74, 0x61, 0x66, 0x66, 0x49, 0x64, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x61,
	0x73, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x61, 0x73,
	0x6b, 0x49, 0x64, 0x22, 0x0f, 0x0a, 0x0d, 0x43, 0x6c, 0x6f, 0x63, 0x6b, 0x6f, 0x75, 0x74, 0x52,
	0x65, 0x70, 0x6c, 0x79, 0x22, 0x11, 0x0a, 0x0f, 0x41, 0x63, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65,
	0x64, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x32, 0x76, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x66, 0x66,
	0x12, 0x3a, 0x0a, 0x08, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x12, 0x16, 0x2e, 0x73,
	0x74, 0x61, 0x66, 0x66, 0x2e, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x71,
	0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x73, 0x74, 0x61, 0x66, 0x66, 0x2e, 0x52, 0x65, 0x67,
	0x69, 0x73, 0x74, 0x65, 0x72, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x00, 0x12, 0x31, 0x0a, 0x05,
	0x45, 0x6c, 0x65, 0x63, 0x74, 0x12, 0x13, 0x2e, 0x73, 0x74, 0x61, 0x66, 0x66, 0x2e, 0x45, 0x6c,
	0x65, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x11, 0x2e, 0x73, 0x74, 0x61,
	0x66, 0x66, 0x2e, 0x45, 0x6c, 0x65, 0x63, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x00, 0x42,
	0x1d, 0x5a, 0x1b, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x6f,
	0x73, 0x2d, 0x64, 0x65, 0x76, 0x2f, 0x64, 0x6d, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x06,
	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}

var (
	file_staff_proto_rawDescOnce sync.Once
	file_staff_proto_rawDescData = file_staff_proto_rawDesc
)

func file_staff_proto_rawDescGZIP() []byte {
	file_staff_proto_rawDescOnce.Do(func() {
		file_staff_proto_rawDescData = protoimpl.X.CompressGZIP(file_staff_proto_rawDescData)
	})
	return file_staff_proto_rawDescData
}

var file_staff_proto_msgTypes = make([]protoimpl.MessageInfo, 9)
var file_staff_proto_goTypes = []interface{}{
	(*RegisterRequest)(nil), // 0: staff.RegisterRequest
	(*RegisterReply)(nil),   // 1: staff.RegisterReply
	(*ElectRequest)(nil),    // 2: staff.ElectRequest
	(*ElectReply)(nil),      // 3: staff.ElectReply
	(*ClockinRequest)(nil),  // 4: staff.ClockinRequest
	(*ClockinReply)(nil),    // 5: staff.ClockinReply
	(*ClockoutRequest)(nil), // 6: staff.ClockoutRequest
	(*ClockoutReply)(nil),   // 7: staff.ClockoutReply
	(*Acknowledgement)(nil), // 8: staff.Acknowledgement
}
var file_staff_proto_depIdxs = []int32{
	0, // 0: staff.Staff.Register:input_type -> staff.RegisterRequest
	2, // 1: staff.Staff.Elect:input_type -> staff.ElectRequest
	1, // 2: staff.Staff.Register:output_type -> staff.RegisterReply
	3, // 3: staff.Staff.Elect:output_type -> staff.ElectReply
	2, // [2:4] is the sub-list for method output_type
	0, // [0:2] is the sub-list for method input_type
	0, // [0:0] is the sub-list for extension type_name
	0, // [0:0] is the sub-list for extension extendee
	0, // [0:0] is the sub-list for field type_name
}

func init() { file_staff_proto_init() }
func file_staff_proto_init() {
	if File_staff_proto != nil {
		return
	}
	if !protoimpl.UnsafeEnabled {
		file_staff_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RegisterRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_staff_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*RegisterReply); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_staff_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ElectRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_staff_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ElectReply); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_staff_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ClockinRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_staff_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ClockinReply); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_staff_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ClockoutRequest); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_staff_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*ClockoutReply); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_staff_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*Acknowledgement); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: file_staff_proto_rawDesc,
			NumEnums:      0,
			NumMessages:   9,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_staff_proto_goTypes,
		DependencyIndexes: file_staff_proto_depIdxs,
		MessageInfos:      file_staff_proto_msgTypes,
	}.Build()
	File_staff_proto = out.File
	file_staff_proto_rawDesc = nil
	file_staff_proto_goTypes = nil
	file_staff_proto_depIdxs = nil
}

repository: calvinyv/dm

repo_name: calvinyv/dm


text:
@article{DiagnosisWang2016,
 author = {Wang, Sen and Chang, Xiao Jun and Li, Xue and Long, Guodong and Yao, Lina and Sheng, Quan Z.},
 doi = {10.1109/TKDE.2016.2605687},
 journal = {IEEE Transactions on Knowledge and Data Engineering},
 month = {dec},
 number = {12},
 pages = {3191--3202},
 title = {Diagnosis Code Assignment Using Sparsity-Based Disease Correlation Embedding},
 volume = {28},
 year = {2016}
}

license: MIT

repository: csenw/csenw-website

license_type: permissive

repo_name: csenw/csenw-website

branch_name: refs/heads/master

extension: bib


text:
SUMMARY = "A curses client for the Music Player Daemon"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
HOMEPAGE = "https://www.musicpd.org/clients/ncmpc/"

inherit meson

DEPENDS += " \
    gettext-native \
    glib-2.0 \
    ncurses \
    libmpdclient \
"

# We're using a 0.32 pre-release commit which contains a fix for a
# build failure.
PV = "0.32~git${SRCPV}"

SRC_URI = " \
    git://github.com/MusicPlayerDaemon/ncmpc \
"
SRCREV = "1150f7931de7588643437069dd798724dc1ceb47"
S = "${WORKDIR}/git"

extension: bb


text:
DESCRIPTION = "Passive DNS network mapper a.k.a. subdomains bruteforcer"
HOMEPAGE = "https://code.google.com/p/dnsmap/"
LICENSE = "GPL-2.0"
LIC_FILES_CHKSUM = "file://gpl-2.0.txt;md5=751419260aa954499f7abaabaa882bbe"

SRCREV = "6a338197fd8de70e13d400f424dc5aa1e46fc8af"
PV = "0.30+git${SRCPV}"

SRC_URI = "git://git.kali.org/packages/dnsmap.git"

S = "${WORKDIR}/git"

TARGET_CC_ARCH += "${LDFLAGS}"

do_configure[noexec] = "1"

do_compile () {
    make CC="${CC}"
}

do_install () {
    install -d ${D}/${sbindir}
    install -d ${D}/${docdir}/${BPN}
    install -m 755 dnsmap ${D}/${sbindir}
    install -m 755 dnsmap-bulk.sh ${D}/${sbindir}
    install -m 644 *.txt ${D}/${docdir}/${BPN}
}

RDEPENDS_${PN} = "bash"

repository: akuster/meta-kali

repo_name: akuster/meta-kali


text:
import background from './background.js'

const initialState = {
  videos: [
    {
      id: 1,
      name: 'Best Day Ever',
      url: 'https://www.youtube.com/watch?v=AbV-Q6tz4B8',
      startTime: '01:15',
      stopTime: '03:59'
    },
    {
      id: 2,
      name: 'Maahi Ve Acoustic',
      url: 'https://www.youtube.com/watch?v=Hc7BjYmn9z0',
      startTime: '03:55',
      stopTime: '06:09'
    }
  ]
}

background.main(initialState)

repository: kunal-mandalia/youtube-looplist

repo_name: kunal-mandalia/youtube-looplist

gha_license_id: MIT

gha_language: JavaScript

extension: js


text:
DESCRIPTION = "Library for rendering SVG files"
SECTION = "x11/utils"
MAINTAINER = "Phil Blundell <pb@handhelds.org>"
DEPENDS = "gtk+ libcroco libart-lgpl libxml2 popt"
LICENSE = "LGPL"
PR = "r3"

inherit autotools pkgconfig gnome

PACKAGES =+ "librsvg-gtk librsvg-gtk-dev rsvg"
FILES_${PN} = "${libdir}/*.so.*"
FILES_rsvg = "${bindir}/rsvg"
FILES_librsvg-gtk = "${libdir}/gtk-2.0/*/*/*.so"
FILES_librsvg-gtk-dev = "${libdir}/gtk-2.0"

do_stage() {
	install -d ${STAGING_INCDIR}/librsvg-2/librsvg/
	install -m 0644 rsvg.h ${STAGING_INCDIR}/librsvg-2/librsvg/
	install -m 0644 librsvg-features.h ${STAGING_INCDIR}/librsvg-2/librsvg/
	oe_libinstall -so -a librsvg-2 ${STAGING_LIBDIR}
}


text:
@techreport{mapaq2016,
  title = {Description Des Sites Maricoles de La Province de {{Qu{\'e}bec}}. {{Sous}}-Minist{\'e}riat Aux P{\^e}ches et {\`a} l'aquaculture Commerciales, {{Direction}} R{\'e}gionale Des {{{\^I}les}}-de-La-{{Madeleine}}. {{Minist{\`e}re}} de l'{{Agriculture}}, Des {{P{\^e}cheries}} et de l'{{Alimentation}} Du {{Qu{\'e}bec}} ({{MAPAQ}}). {{Qu{\'e}bec}}, {{Canada}}},
  institution = {{Minist{\`e}re de l'Agriculture, des P{\^e}cheries et de l'Alimentation du Qu{\'e}bec}},
  author = {MAPAQ},
  year = {2016}
}

@techreport{dfo2016,
  title = {Prince {{Edward Island Aquaculture Leases}}. {{Aquaculture Division}}. {{Department}} of {{Fisheries}} and {{Oceans Canada}} ({{DFO}}). {{Prince}}-{{Edward}}-{{Island}}, {{Canada}}. {{Available}} at: {{http://www.arcgis.com/home/item.html?id=16aa8830c7084a8a92ce066b525978b4}}},
  institution = {{Department of Fisheries and Oceans}},
  author = {DFO},
  year = {2016}
}

@techreport{aaf2016,
  title = {Marine {{Aquaculture Site Mapping Program}} ({{MASMP}}). {{Department}} of {{Agriculture}}, {{Aquaculture}} and {{Fisheries}} ({{AAF}}), {{Government}} of {{New}}-{{Brunswick}}, {{New}}-{{Brunswick}}, {{Canada}}. {{Available}} at: {{https://www2.gnb.ca/content/gnb/en/departments/10/aquaculture}} /Content/Masmp.Html},
  institution = {{Department of Agriculture, Aquaculture and Fisheries}},
  author = {AAF},
  year = {2016}
}

@techreport{fa2016,
  title = {Aquaculture {{Site Mapping Tool}}. {{Department}} of {{Fisheries}} and {{Aquaculture}} ({{FA}}), {{Department}} of {{Agriculture}}, {{Government}} of {{Nova}}-{{Scotia}}. {{Nova}}-{{Scotia}}, {{Canada}}. {{Available}} at: {{https://novascotia.ca/fish/aquaculture/site-mapping-tool/}}},
  institution = {{Department of Fisheries and Aquaculture}},
  author = {FA},
  year = {2016}
}

@techreport{ffa2016,
  title = {Description of Aquaculture Sites in {{Newfoundland}}. {{Department}} of {{Fisheries}}, {{Forestry}} and {{Agrifoods}} ({{FFA}}), {{Government}} of {{Newfoundland}} and {{Labrador}}. {{Newfoundland}}, {{Canada}}.},
  institution = {{Department of Fisheries, Forestry and Agrifoods}},
  author = {FFA},
  year = {2016}
}

repository: eDrivers/eDriversWorkflows

repo_name: eDrivers/eDriversWorkflows


text:
vcpkg_fail_port_install(ON_TARGET "UWP")
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)

vcpkg_configure_cmake(SOURCE_PATH ${CURRENT_PORT_DIR}
  PREFER_NINJA OPTIONS_DEBUG -DINSTALL_HEADERS=OFF)

vcpkg_install_cmake()
vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/${PORT})
vcpkg_copy_pdbs()

file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
file(INSTALL ${CURRENT_PORT_DIR}/license.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)

repository: qis/library

repo_name: qis/library

extension: cmake


text:
@article{Andrade2017,
  author = {Andrade, Maria de Fatima and Kumar, Prashant and de Freitas, Edmilson Dias and Ynoue, Rita Yuri and Martins, Jorge and Martins, Leila D. and Nogueira, Thiago and Perez-Martinez, Pedro and de Miranda, Regina Maura and Albuquerque, Taciana and Gon{\c{c}}alves, Fabio Luiz Teixeira and Oyama, Beatriz and Zhang, Yang},
  doi = {10.1016/j.atmosenv.2017.03.051},
  issn = {18732844},
  journal = {Atmospheric Environment},
  keywords = {Air pollution,Climate change,Emissions,Exposure,Fuel and energy,Megacity of S{\~{a}}o Paulo},
  pages = {66--82},
  publisher = {Elsevier Ltd},
  title = {Air quality in the megacity of S{\~{a}}o Paulo: Evolution over the last 30 years and future perspectives},
  url = {http://dx.doi.org/10.1016/j.atmosenv.2017.03.051},
  volume = {159},
  year = {2017}
}

@article{Riojas-Rodriguez2016,
  author = {Riojas-Rodr{\'{i}}guez, Horacio and {Da Silva}, Agnes Soares and Texcalac-Sangrador, Jos{\'{e}} Luis and Moreno-Banda, Grea Litai},
  issn = {16805348},
  journal = {Revista Panamericana de Salud Publica/Pan American Journal of Public Health},
  keywords = {Air pollution,Caribbean region,Climate change,Environment and public health environmental policy,Latin America,South America},
  number = {3},
  pages = {150--159},
  pmid = {27991972},
  title = {Air pollution management and control in Latin America and the Caribbean: Implications for climate change},
  volume = {40},
  year = {2016}
}

@book{Seinfeld2016,
  author = {Seinfeld, John H. and Pandis, Spyros N.},
  edition = {3},
  isbn = {9781118947401},
  pages = {1152},
  publisher = {John Wiley {\&} Sons},
  title = {Atmospheric Chemistry and Physics: From Air Pollution to Climate Change},
  year = {2016}
}

@article{Carslaw2012,
  author = {Carslaw, David C. and Ropkins, Karl},
  doi = {10.1016/j.envsoft.2011.09.008},
  isbn = {1364-8152},
  issn = {13648152},
  journal = {Environmental Modelling {\&} Software},
  keywords = {Air pollution,Dispersion modelling,Open source software,R,Reproducibility},
  mendeley-groups = {paper1,biblio{\_}final,all,6th{\_}semi-anual{\_}report},
  month = {jan},
  pages = {52--61},
  publisher = {Elsevier Ltd},
  title = {openair — An R package for air quality data analysis},
  url = {http://dx.doi.org/10.1016/j.envsoft.2011.09.008 https://linkinghub.elsevier.com/retrieve/pii/S1364815211002064},
  volume = {27-28},
  year = {2012}
}

@article{Gavidia-Calderon2018,
  author = {Gavidia-Calder{\'{o}}n, M. and Vara-Vela, A. and Crespo, N. M. and Andrade, M. F.},
  doi = {10.1016/j.atmosenv.2018.09.026},
  issn = {18732844},
  journal = {Atmospheric Environment},
  keywords = {Chemical boundary conditions,MOZART-4,S{\~{a}}o Paulo megacity,Tropospheric ozone,WRF-Chem},
  number = {March},
  pages = {112--124},
  publisher = {Elsevier},
  title = {Impact of time-dependent chemical boundary conditions on tropospheric ozone simulation with WRF-Chem: An experiment over the Metropolitan Area of S{\~{a}}o Paulo},
  url = {https://doi.org/10.1016/j.atmosenv.2018.09.026},
  volume = {195},
  year = {2018}
}

@book{Dasu2003,
  author = {Dasu, Tamraparni and Johnson, Theodore},
  edition = {1},
  isbn = {978-0-471-26851-2},
  pages = {203},
  publisher = {John Wiley {\&} Sons, Inc},
  title = {Exploratory Data Mining and Data Cleaning},
  year = {2003}
}

@Manual{RCoreTeam2020,
    title = {R: A Language and Environment for Statistical Computing},
    author = {{R Core Team}},
    organization = {R Foundation for Statistical Computing},
    address = {Vienna, Austria},
    year = {2020},
    url = {https://www.r-project.org/}
}

@Manual{XML,
    title = {XML: Tools for Parsing and Generating XML Within R and S-Plus},
    author = {Duncan Temple Lang},
    year = {2020},
    note = {R package version 3.99-0.5},
    url = {https://CRAN.R-project.org/package=XML}
}

@Manual{httr,
    title = {httr: Tools for Working with URLs and HTTP},
    author = {Hadley Wickham},
    year = {2020},
    note = {R package version 1.4.2},
    url = {https://httr.r-lib.org/}
}

@article{Dantas2020,
    author = {Dantas, Guilherme and Siciliano, Bruno and Fran{\c{c}}a, Bruno Boscaro and da Silva, Cleyton M. and Arbilla, Graciela},
    doi = {10.1016/j.scitotenv.2020.139085},
    issn = {18791026},
    journal = {Science of the Total Environment},
    keywords = {COVID-19,Carbon monoxide,Lockdown,Nitrogen dioxide,Ozone,PM10},
    pages = {139085},
    publisher = {Elsevier B.V.},
    title = {{The impact of COVID-19 partial lockdown on the air quality of the city of Rio de Janeiro, Brazil}},
    url = {https://doi.org/10.1016/j.scitotenv.2020.139085},
    volume = {729},
    year = {2020}
}

@article{Ooms,
    archivePrefix = {arXiv},
    arxivId = {1403.2805},
    author = {Ooms, Jeroen},
    eprint = {1403.2805},
    month = {mar},
    pages = {1--29},
    title = {{The jsonlite Package: A Practical and Consistent Mapping Between JSON Data and R Objects}},
    url = {http://arxiv.org/abs/1403.2805},
    year = {2014}
}

repository: ropensci/qualR

repo_name: ropensci/qualR

gha_license_id: NOASSERTION

gha_language: R


text:
@article{Venkatesh2017-sb,
 abstract = {Recovery from injuries to the central nervous system, including
spinal cord injury, is constrained in part by the intrinsically
low ability of many CNS neurons to mount an effective
regenerative growth response. To improve outcomes, it is
essential to understand and ultimately reverse these
neuron-intrinsic constraints. Genetic manipulation of key
transcription factors (TFs), which act to orchestrate production
of multiple regeneration-associated genes, has emerged as a
promising strategy. It is likely that no single TF will be
sufficient to fully restore neuron-intrinsic growth potential,
and that multiple, functionally interacting factors will be
needed. An extensive literature, mostly from non-neural cell
types, has identified potential mechanisms by which TFs can
functionally synergize. Here we examine four potential mechanisms
of TF/TF interaction; physical interaction, transcriptional
cross-regulation, signaling-based cross regulation, and
co-occupancy of regulatory DNA. For each mechanism, we consider
how existing knowledge can be used to guide the discovery and
effective use of TF combinations in the context of regenerative
neuroscience. This mechanistic insight into TF interactions is
needed to accelerate the design of effective TF-based
interventions to relieve neuron-intrinsic constraints to
regeneration and to foster recovery from CNS injury.},
 author = {Venkatesh, Ishwariya and Blackmore, Murray G},
 journal = {Neurosci. Lett.},
 keywords = {Axon regeneration; Co-occupancy; Combination; Network; Spinal
cord injury; Transcription factor;Mendeley Import (Apr
03)/Groups/ATAC R21;Mendeley Import (Apr 03)/ATAC R21;Mendeley
Import (Apr 03)/Groups/VP16 HHEX},
 month = {June},
 pages = {64--73},
 title = {Selecting optimal combinations of transcription factors to
promote axon regeneration: Why mechanisms matter},
 volume = {652},
 year = {2017}
}

repository: ishwariyavenkatesh/ishvenkatesh-website

repo_name: ishwariyavenkatesh/ishvenkatesh-website


text:
@proceedings{SGRM18,
author={Sharma, Shubham and  Gupta, Rahul and  Roy, Subhajit and  Meel, Kuldeep S.},
title={Knowledge Compilation meets Uniform Sampling},
year={2018},
code={https://github.com/meelgroup/KUS},
booktitle={Proceedings of International Conference on Logic for Programming Artificial Intelligence and Reasoning (LPAR)},
month={11},
abstract={Uniform sampling has drawn diverse applications in programming languages and software engineering, like in constrained-random verification (CRV), constrained-fuzzing and bug synthesis. The effectiveness of these applications depend on the uniformity of test stimuli generated from a given set of constraints. Despite significant progress over the past few years, the performance of the state of the art techniques still falls short of those of heuristic methods employed in the industry which sacrifice either uniformity or scalability when generating stimuli. In this paper, we propose a new approach to the uniform generation that builds on recent progress in knowledge compilation. The primary contribution of this paper is marrying knowledge compilation with uniform sampling: our algorithm, KUS, employs the state-of-the-art knowledge compilers to first compile constraints into d-DNNF form, and then, generates samples by making two passes over the compiled representation. We show that KUS is able to significantly outperform existing state-of-the-art algorithms, SPUR and UniGen2, by up to 3 orders of magnitude in terms of runtime while achieving a geometric speedup of 1.7 and 8.3 over SPUR and UniGen2 respectively. Also, KUS achieves a lower PAR-2 score, around 0.82x that of SPUR and 0.38x that of UniGen2. Furthermore, KUS achieves speedups of up to 3 orders of magnitude for incremental sampling. The distribution generated by KUS is statistically indistinguishable from that generated by an ideal uniform sampler. Moreover, KUS is almost oblivious to the number of samples requested.},
}

repository: meelgroup/meelgroup-website

repo_name: meelgroup/meelgroup-website

gha_language: TeX


text:
@InProceedings{sutskever13,
  pdf = {http://jmlr.org/proceedings/papers/v28/sutskever13.pdf},
  supplementary = {Supplementary:sutskever13-supp.pdf},
  number = {3},
  section = {cycle-3},
  title = {On the importance of initialization and momentum in deep learning},
  author = {Sutskever, Ilya and Martens, James and Dahl, George and Hinton, Geoffrey},
  pages = {1139-1147},
  abstract = {Deep and recurrent neural networks (DNNs and RNNs respectively) are powerful models that were considered to be almost impossible to train using stochastic gradient descent with momentum. In this paper, we show that when stochastic gradient descent with momentum uses a well-designed random initialization and a particular type of slowly increasing schedule for the momentum parameter, it can train both DNNs and RNNs (on datasets with long-term dependencies) to levels of performance that were previously achievable only with Hessian-Free optimization. We find that both the initialization and the momentum are crucial since poorly initialized networks cannot be trained with momentum and well-initialized networks perform markedly worse when the momentum is absent or poorly tuned.     Our success training these models suggests that previous attempts to train deep and recurrent neural networks from random initializations have likely failed due to poor initialization schemes. Furthermore, carefully tuned momentum methods suffice for dealing with the curvature issues in deep and recurrent network training objectives without the need for sophisticated second-order methods.   },
}

repository: mreid/papersite

repo_name: mreid/papersite


text:
@proceedings{ws-2019-innovative,
    title = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    editor = "Yannakoudakis, Helen  and
      Kochmar, Ekaterina  and
      Leacock, Claudia  and
      Madnani, Nitin  and
      Pil{\'a}n, Ildik{\'o}  and
      Zesch, Torsten",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4400",
}
@inproceedings{loukina-etal-2019-many,
    title = "The many dimensions of algorithmic fairness in educational applications",
    author = "Loukina, Anastassia  and
      Madnani, Nitin  and
      Zechner, Klaus",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4401",
    doi = "10.18653/v1/W19-4401",
    pages = "1--10",
}
@inproceedings{ha-etal-2019-predicting,
    title = "Predicting the Difficulty of Multiple Choice Questions in a High-stakes Medical Exam",
    author = "Ha, Le An  and
      Yaneva, Victoria  and
      Baldwin, Peter  and
      Mee, Janet",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4402",
    doi = "10.18653/v1/W19-4402",
    pages = "11--20",
}
@inproceedings{zhou-etal-2019-intelligent,
    title = "An Intelligent Testing Strategy for Vocabulary Assessment of {C}hinese Second Language Learners",
    author = "Zhou, Wei  and
      Hu, Renfen  and
      Sun, Feipeng  and
      Huang, Ronghuai",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4403",
    doi = "10.18653/v1/W19-4403",
    pages = "21--29",
}
@inproceedings{weiss-etal-2019-computationally,
    title = "Computationally Modeling the Impact of Task-Appropriate Language Complexity and Accuracy on Human Grading of {G}erman Essays",
    author = {Weiss, Zarah  and
      Riemenschneider, Anja  and
      Schr{\"o}ter, Pauline  and
      Meurers, Detmar},
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4404",
    doi = "10.18653/v1/W19-4404",
    pages = "30--45",
}
@inproceedings{snajder-etal-2019-analysing,
    title = "Analysing Rhetorical Structure as a Key Feature of Summary Coherence",
    author = "{\v{S}}najder, Jan  and
      Sladoljev-Agejev, Tamara  and
      Koli{\'c} Vehovec, Svjetlana",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4405",
    doi = "10.18653/v1/W19-4405",
    pages = "46--51",
}
@inproceedings{bryant-etal-2019-bea,
    title = "The {BEA}-2019 Shared Task on Grammatical Error Correction",
    author = "Bryant, Christopher  and
      Felice, Mariano  and
      Andersen, {\O}istein E.  and
      Briscoe, Ted",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4406",
    doi = "10.18653/v1/W19-4406",
    pages = "52--75",
}
@inproceedings{flor-etal-2019-benchmark,
    title = "A Benchmark Corpus of {E}nglish Misspellings and a Minimally-supervised Model for Spelling Correction",
    author = "Flor, Michael  and
      Fried, Michael  and
      Rozovskaya, Alla",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4407",
    doi = "10.18653/v1/W19-4407",
    pages = "76--86",
}
@inproceedings{qiu-park-2019-artificial,
    title = "Artificial Error Generation with Fluency Filtering",
    author = "Qiu, Mengyang  and
      Park, Jungyeul",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4408",
    doi = "10.18653/v1/W19-4408",
    pages = "87--91",
}
@inproceedings{johan-berggren-etal-2019-regression,
    title = "Regression or classification? Automated Essay Scoring for {N}orwegian",
    author = "Johan Berggren, Stig  and
      Rama, Taraka  and
      {\O}vrelid, Lilja",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4409",
    doi = "10.18653/v1/W19-4409",
    pages = "92--102",
}
@inproceedings{bell-etal-2019-context,
    title = "Context is Key: Grammatical Error Detection with Contextual Word Representations",
    author = "Bell, Samuel  and
      Yannakoudakis, Helen  and
      Rei, Marek",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4410",
    doi = "10.18653/v1/W19-4410",
    pages = "103--115",
}
@inproceedings{riordan-etal-2019-account,
    title = "How to account for mispellings: Quantifying the benefit of character representations in neural content scoring models",
    author = "Riordan, Brian  and
      Flor, Michael  and
      Pugh, Robert",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4411",
    doi = "10.18653/v1/W19-4411",
    pages = "116--126",
}
@inproceedings{alikaniotis-raheja-2019-unreasonable,
    title = "The Unreasonable Effectiveness of Transformer Language Models in Grammatical Error Correction",
    author = "Alikaniotis, Dimitris  and
      Raheja, Vipul",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4412",
    doi = "10.18653/v1/W19-4412",
    pages = "127--133",
}
@inproceedings{katsumata-komachi-2019-almost,
    title = "(Almost) Unsupervised Grammatical Error Correction using Synthetic Comparable Corpus",
    author = "Katsumata, Satoru  and
      Komachi, Mamoru",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4413",
    doi = "10.18653/v1/W19-4413",
    pages = "134--138",
}
@inproceedings{kantor-etal-2019-learning,
    title = "Learning to combine Grammatical Error Corrections",
    author = "Kantor, Yoav  and
      Katz, Yoav  and
      Choshen, Leshem  and
      Cohen-Karlik, Edo  and
      Liberman, Naftali  and
      Toledo, Assaf  and
      Menczel, Amir  and
      Slonim, Noam",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4414",
    doi = "10.18653/v1/W19-4414",
    pages = "139--148",
}
@inproceedings{xu-etal-2019-erroneous,
    title = "Erroneous data generation for Grammatical Error Correction",
    author = "Xu, Shuyao  and
      Zhang, Jiehao  and
      Chen, Jin  and
      Qin, Long",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4415",
    doi = "10.18653/v1/W19-4415",
    pages = "149--158",
}
@inproceedings{li-etal-2019-laix,
    title = "The {LAIX} Systems in the {BEA}-2019 {GEC} Shared Task",
    author = "Li, Ruobing  and
      Wang, Chuan  and
      Zha, Yefei  and
      Yu, Yonghong  and
      Guo, Shiman  and
      Wang, Qiang  and
      Liu, Yang  and
      Lin, Hui",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4416",
    doi = "10.18653/v1/W19-4416",
    pages = "159--167",
}
@inproceedings{stahlberg-byrne-2019-cueds,
    title = "The {CUED}{'}s Grammatical Error Correction Systems for {BEA}-2019",
    author = "Stahlberg, Felix  and
      Byrne, Bill",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4417",
    doi = "10.18653/v1/W19-4417",
    pages = "168--175",
}
@inproceedings{asano-etal-2019-aip,
    title = "The {AIP}-Tohoku System at the {BEA}-2019 Shared Task",
    author = "Asano, Hiroki  and
      Mita, Masato  and
      Mizumoto, Tomoya  and
      Suzuki, Jun",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4418",
    doi = "10.18653/v1/W19-4418",
    pages = "176--182",
}
@inproceedings{naplava-straka-2019-cuni,
    title = "{CUNI} System for the Building Educational Applications 2019 Shared Task: Grammatical Error Correction",
    author = "N{\'a}plava, Jakub  and
      Straka, Milan",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4419",
    doi = "10.18653/v1/W19-4419",
    pages = "183--190",
}
@inproceedings{flachs-etal-2019-noisy,
    title = "Noisy Channel for Low Resource Grammatical Error Correction",
    author = "Flachs, Simon  and
      Lacroix, Oph{\'e}lie  and
      S{\o}gaard, Anders",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4420",
    doi = "10.18653/v1/W19-4420",
    pages = "191--196",
}
@inproceedings{yang-wang-2019-blcu,
    title = "The {BLCU} System in the {BEA} 2019 Shared Task",
    author = "Yang, Liner  and
      Wang, Chencheng",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4421",
    doi = "10.18653/v1/W19-4421",
    pages = "197--206",
}
@inproceedings{kaneko-etal-2019-tmu,
    title = "{TMU} Transformer System Using {BERT} for Re-ranking at {BEA} 2019 Grammatical Error Correction on Restricted Track",
    author = "Kaneko, Masahiro  and
      Hotate, Kengo  and
      Katsumata, Satoru  and
      Komachi, Mamoru",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4422",
    doi = "10.18653/v1/W19-4422",
    pages = "207--212",
}
@inproceedings{choe-etal-2019-neural,
    title = "A Neural Grammatical Error Correction System Built On Better Pre-training and Sequential Transfer Learning",
    author = "Choe, Yo Joong  and
      Ham, Jiyeon  and
      Park, Kyubyong  and
      Yoon, Yeoil",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4423",
    doi = "10.18653/v1/W19-4423",
    pages = "213--227",
}
@inproceedings{yuan-etal-2019-neural,
    title = "Neural and {FST}-based approaches to grammatical error correction",
    author = "Yuan, Zheng  and
      Stahlberg, Felix  and
      Rei, Marek  and
      Byrne, Bill  and
      Yannakoudakis, Helen",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4424",
    doi = "10.18653/v1/W19-4424",
    pages = "228--239",
}
@inproceedings{qiu-etal-2019-improving,
    title = "Improving Precision of Grammatical Error Correction with a Cheat Sheet",
    author = "Qiu, Mengyang  and
      Chen, Xuejiao  and
      Liu, Maggie  and
      Parvathala, Krishna  and
      Patil, Apurva  and
      Park, Jungyeul",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4425",
    doi = "10.18653/v1/W19-4425",
    pages = "240--245",
}
@inproceedings{didenko-shaptala-2019-multi,
    title = "Multi-headed Architecture Based on {BERT} for Grammatical Errors Correction",
    author = "Didenko, Bohdan  and
      Shaptala, Julia",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4426",
    doi = "10.18653/v1/W19-4426",
    pages = "246--251",
}
@inproceedings{grundkiewicz-etal-2019-neural,
    title = "Neural Grammatical Error Correction Systems with Unsupervised Pre-training on Synthetic Data",
    author = "Grundkiewicz, Roman  and
      Junczys-Dowmunt, Marcin  and
      Heafield, Kenneth",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4427",
    doi = "10.18653/v1/W19-4427",
    pages = "252--263",
}
@inproceedings{bhalla-klimcikova-2019-evaluation,
    title = "Evaluation of automatic collocation extraction methods for language learning",
    author = "Bhalla, Vishal  and
      Klimcikova, Klara",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4428",
    doi = "10.18653/v1/W19-4428",
    pages = "264--274",
}
@inproceedings{markov-etal-2019-anglicized,
    title = "Anglicized Words and Misspelled Cognates in Native Language Identification",
    author = "Markov, Ilia  and
      Nastase, Vivi  and
      Strapparava, Carlo",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4429",
    doi = "10.18653/v1/W19-4429",
    pages = "275--284",
}
@inproceedings{miaschi-etal-2019-linguistically,
    title = "Linguistically-Driven Strategy for Concept Prerequisites Learning on {I}talian",
    author = "Miaschi, Alessio  and
      Alzetta, Chiara  and
      Cardillo, Franco Alberto  and
      Dell{'}Orletta, Felice",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4430",
    doi = "10.18653/v1/W19-4430",
    pages = "285--295",
}
@inproceedings{arai-etal-2019-grammatical,
    title = "Grammatical-Error-Aware Incorrect Example Retrieval System for Learners of {J}apanese as a Second Language",
    author = "Arai, Mio  and
      Kaneko, Masahiro  and
      Komachi, Mamoru",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4431",
    doi = "10.18653/v1/W19-4431",
    pages = "296--305",
}
@inproceedings{yoon-etal-2019-toward,
    title = "Toward Automated Content Feedback Generation for Non-native Spontaneous Speech",
    author = "Yoon, Su-Youn  and
      Hsieh, Ching-Ni  and
      Zechner, Klaus  and
      Mulholland, Matthew  and
      Wang, Yuan  and
      Madnani, Nitin",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4432",
    doi = "10.18653/v1/W19-4432",
    pages = "306--315",
}
@inproceedings{mizumoto-etal-2019-analytic,
    title = "Analytic Score Prediction and Justification Identification in Automated Short Answer Scoring",
    author = "Mizumoto, Tomoya  and
      Ouchi, Hiroki  and
      Isobe, Yoriko  and
      Reisert, Paul  and
      Nagata, Ryo  and
      Sekine, Satoshi  and
      Inui, Kentaro",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4433",
    doi = "10.18653/v1/W19-4433",
    pages = "316--325",
}
@inproceedings{shah-etal-2019-content,
    title = "Content Customization for Micro Learning using Human Augmented {AI} Techniques",
    author = "Shah, Ayush  and
      Abuelsaad, Tamer  and
      Ahn, Jae-Wook  and
      Dey, Prasenjit  and
      Kokku, Ravi  and
      Sharma Mittal, Ruhi  and
      Vempaty, Aditya  and
      Sharma, Mourvi",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4434",
    doi = "10.18653/v1/W19-4434",
    pages = "326--335",
}
@inproceedings{raamadhurai-etal-2019-curio,
    title = "Curio {S}mart{C}hat : A system for Natural Language Question Answering for Self-Paced K-12 Learning",
    author = "Raamadhurai, Srikrishna  and
      Baker, Ryan  and
      Poduval, Vikraman",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4435",
    doi = "10.18653/v1/W19-4435",
    pages = "336--342",
}
@inproceedings{gecchele-etal-2019-supporting,
    title = "Supporting content evaluation of student summaries by Idea Unit embedding",
    author = "Gecchele, Marcello  and
      Yamada, Hiroaki  and
      Tokunaga, Takenobu  and
      Sawaki, Yasuyo",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4436",
    doi = "10.18653/v1/W19-4436",
    pages = "343--348",
}
@inproceedings{vajjala-lucic-2019-understanding,
    title = "On Understanding the Relation between Expert Annotations of Text Readability and Target Reader Comprehension",
    author = "Vajjala, Sowmya  and
      Lucic, Ivana",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4437",
    doi = "10.18653/v1/W19-4437",
    pages = "349--359",
}
@inproceedings{forti-etal-2019-measuring,
    title = "Measuring Text Complexity for {I}talian as a Second Language Learning Purposes",
    author = "Forti, Luciana  and
      Milani, Alfredo  and
      Piersanti, Luisa  and
      Santarelli, Filippo  and
      Santucci, Valentino  and
      Spina, Stefania",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4438",
    doi = "10.18653/v1/W19-4438",
    pages = "360--368",
}
@inproceedings{renduchintala-etal-2019-simple,
    title = "Simple Construction of Mixed-Language Texts for Vocabulary Learning",
    author = "Renduchintala, Adithya  and
      Koehn, Philipp  and
      Eisner, Jason",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4439",
    doi = "10.18653/v1/W19-4439",
    pages = "369--379",
}
@inproceedings{weiss-meurers-2019-analyzing,
    title = "Analyzing Linguistic Complexity and Accuracy in Academic Language Development of {G}erman across Elementary and Secondary School",
    author = "Weiss, Zarah  and
      Meurers, Detmar",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4440",
    doi = "10.18653/v1/W19-4440",
    pages = "380--393",
}
@inproceedings{yoon-lee-2019-content,
    title = "Content Modeling for Automated Oral Proficiency Scoring System",
    author = "Yoon, Su-Youn  and
      Lee, Chong Min",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4441",
    doi = "10.18653/v1/W19-4441",
    pages = "394--401",
}
@inproceedings{mondal-etal-2019-learning,
    title = "Learning Outcomes and Their Relatedness in a Medical Curriculum",
    author = "Mondal, Sneha  and
      Dhamecha, Tejas  and
      Godbole, Shantanu  and
      Pathak, Smriti  and
      Mendoza, Red  and
      Wijayarathna, K Gayathri  and
      Zary, Nabil  and
      Saha, Swarnadeep  and
      Chetlur, Malolan",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4442",
    doi = "10.18653/v1/W19-4442",
    pages = "402--411",
}
@inproceedings{benzahra-yvon-2019-measuring,
    title = "Measuring text readability with machine comprehension: a pilot study",
    author = "Benzahra, Marc  and
      Yvon, Fran{\c{c}}ois",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4443",
    doi = "10.18653/v1/W19-4443",
    pages = "412--422",
}
@inproceedings{clausen-nastase-2019-metaphors,
    title = "Metaphors in Text Simplification: To change or not to change, that is the question",
    author = "Clausen, Yulia  and
      Nastase, Vivi",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4444",
    doi = "10.18653/v1/W19-4444",
    pages = "423--434",
}
@inproceedings{wang-etal-2019-application,
    title = "Application of an Automatic Plagiarism Detection System in a Large-scale Assessment of {E}nglish Speaking Proficiency",
    author = "Wang, Xinhao  and
      Evanini, Keelan  and
      Mulholland, Matthew  and
      Qian, Yao  and
      Bruno, James V.",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4445",
    doi = "10.18653/v1/W19-4445",
    pages = "435--443",
}
@inproceedings{mayfield-etal-2019-equity,
    title = "Equity Beyond Bias in Language Technologies for Education",
    author = "Mayfield, Elijah  and
      Madaio, Michael  and
      Prabhumoye, Shrimai  and
      Gerritsen, David  and
      McLaughlin, Brittany  and
      Dixon-Rom{\'a}n, Ezekiel  and
      Black, Alan W",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4446",
    doi = "10.18653/v1/W19-4446",
    pages = "444--460",
}
@inproceedings{huang-etal-2019-receptive,
    title = "From Receptive to Productive: Learning to Use Confusing Words through Automatically Selected Example Sentences",
    author = "Huang, Chieh-Yang  and
      Huang, Yi-Ting  and
      Chen, MeiHua  and
      Ku, Lun-Wei",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4447",
    doi = "10.18653/v1/W19-4447",
    pages = "461--471",
}
@inproceedings{sakakini-etal-2019-equipping,
    title = "Equipping Educational Applications with Domain Knowledge",
    author = "Sakakini, Tarek  and
      Gong, Hongyu  and
      Lee, Jong Yoon  and
      Schloss, Robert  and
      Xiong, JinJun  and
      Bhat, Suma",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4448",
    doi = "10.18653/v1/W19-4448",
    pages = "472--477",
}
@inproceedings{htut-tetreault-2019-unbearable,
    title = "The Unbearable Weight of Generating Artificial Errors for Grammatical Error Correction",
    author = "Htut, Phu Mon  and
      Tetreault, Joel",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4449",
    doi = "10.18653/v1/W19-4449",
    pages = "478--483",
}
@inproceedings{nadeem-etal-2019-automated,
    title = "Automated Essay Scoring with Discourse-Aware Neural Models",
    author = "Nadeem, Farah  and
      Nguyen, Huy  and
      Liu, Yang  and
      Ostendorf, Mari",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4450",
    doi = "10.18653/v1/W19-4450",
    pages = "484--493",
}
@inproceedings{hou-etal-2019-modeling,
    title = "Modeling language learning using specialized Elo rating",
    author = "Hou, Jue  and
      Maximilian, Koppatz  and
      Hoya Quecedo, Jos{\'e} Mar{\'\i}a  and
      Stoyanova, Nataliya  and
      Yangarber, Roman",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4451",
    doi = "10.18653/v1/W19-4451",
    pages = "494--506",
}
@inproceedings{gao-etal-2019-rubric,
    title = "Rubric Reliability and Annotation of Content and Argument in Source-Based Argument Essays",
    author = "Gao, Yanjun  and
      Driban, Alex  and
      Xavier McManus, Brennan  and
      Musi, Elena  and
      Davies, Patricia  and
      Muresan, Smaranda  and
      Passonneau, Rebecca J.",
    booktitle = "Proceedings of the Fourteenth Workshop on Innovative Use of NLP for Building Educational Applications",
    month = aug,
    year = "2019",
    address = "Florence, Italy",
    publisher = "Association for Computational Linguistics",
    url = "https://www.aclweb.org/anthology/W19-4452",
    doi = "10.18653/v1/W19-4452",
    pages = "507--518",
}

repository: emorynlp/nlprankings

repo_name: emorynlp/nlprankings


text:
inherit cross
inherit go

SRC_URI = "git://github.com/tools/godep;protocol=https;destsuffix=godep-${PV}/src/github.com/tools/godep"

SRCREV_pn-godep = "955e36c90cb22b2315f48ab773b653532627d53d"

LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://${S}/src/github.com/tools/godep/License;md5=71eb66e9b353dd06ca5a81ce0f469e1a"

do_compile() {
  GOPATH="${B}:${S}"
  export GOPATH

  # Compile for build architecture.
  CGO_ENABLED=0 GOARCH= go install github.com/tools/godep
}

do_install() {
  install -d "${D}/${bindir}"
  install -m 0755 "${B}/bin/godep" "${D}/${bindir}"
}

repository: jormenjanssen/meta-mender

repo_name: jormenjanssen/meta-mender

gha_language: Python


text:
DESCRIPTION = "Panel plugin displaying instant disk/partition performance"
HOMEPAGE = "http://goodies.xfce.org/projects/panel-plugins/xfce4-diskperf-plugin"
LICENSE = "RogerSeguin"
LIC_FILES_CHKSUM = "file://COPYING;md5=d3e627798d6a60bece47aa8b3532e1f1"

inherit xfce-panel-plugin

# SRC_URI must follow inherited one
SRC_URI += "file://port-to-libxfce4ui.patch"
SRC_URI[md5sum] = "c6ece8123c762ee203cbc6fd5450b503"
SRC_URI[sha256sum] = "d75e2cd846c784cba804c5cc7796964b3965c764003ca4c1751c68ff83e85793"


text:
@article{Little-2020-Drivers,
    title = "Drivers and health implications of the dietary transition among Inuit in the Canadian Arctic: a scoping review",
    author = "Little, Matthew  and
      Hagar, Hilary  and
      Zivot, Chloe  and
      Dodd, Warren  and
      Skinner, Kelly  and
      Kenny, Tiff-Annie  and
      Caughey, Amy  and
      Gaupholm, Josephine  and
      Lemire, Melanie",
    journal = "Public Health Nutrition, Volume 24, Issue 9",
    volume = "24",
    number = "9",
    year = "2020",
    publisher = "Cambridge University Press (CUP)",
    url = "https://aclanthology.org/G20-8001",
    doi = "10.1017/s1368980020002402",
    pages = "2650--2668",
    abstract = "The current study undertook a systematic scoping review on the drivers and implications of dietary changes among Inuit in the Canadian Arctic.A keyword search of peer-reviewed articles was performed using PubMed, Web of Science, CINAHL, Academic Search Premier, Circumpolar Health Bibliographic Database and High North Research Documents. Eligibility criteria included all full-text articles of any design reporting on research on food consumption, nutrient intake, dietary adequacy, dietary change, food security, nutrition-related chronic diseases or traditional food harvesting and consumption among Inuit populations residing in Canada. Articles reporting on in vivo and in vitro experiments or on health impacts of environmental contaminants were excluded.A total of 162 studies were included. Studies indicated declining country food (CF) consumption in favour of market food (MF). Drivers of this transition include colonial processes, poverty and socio-economic factors, changing food preferences and knowledge, and climate change. Health implications of the dietary transition are complex. Micro-nutrient deficiencies and dietary inadequacy are serious concerns and likely exacerbated by increased consumption of non-nutrient dense MF. Food insecurity, overweight, obesity and related cardiometabolic health outcomes are growing public health concerns. Meanwhile, declining CF consumption is entangled with shifting culture and traditional knowledge, with potential implications for psychological, spiritual, social and cultural health and well-being.By exploring and synthesising published literature, this review provides insight into the complex factors influencing Inuit diet and health. Findings may be informative for future research, decision-making and intersectoral actions around risk assessment, food policy and innovative community programmes.",
}

repository: gwf-uwaterloo/gwf-publications

repo_name: gwf-uwaterloo/gwf-publications

branch_name: refs/heads/main


text:
include(FindPackageHandleStandardArgs)
include(SelectLibraryConfigurations)

find_path(
	Comedi_INCLUDE_DIRS
	NAMES
	comedilib.h
)

mark_as_advanced(Comedi_INCLUDE_DIRS)

find_library(
	Comedi_LIBRARY_DEBUG
	NAMES
	comedid
)

find_library(
	Comedi_LIBRARY_RELEASE
	NAMES
	comedi
)

select_library_configurations(Comedi)

find_package_handle_standard_args(
	Comedi
	FOUND_VAR Comedi_FOUND
	REQUIRED_VARS Comedi_INCLUDE_DIRS Comedi_LIBRARIES
)

if(Comedi_FOUND AND NOT TARGET Comedi::Comedi)
	add_library(Comedi::Comedi UNKNOWN IMPORTED)

	if(Comedi_LIBRARY_RELEASE)
		set_property(TARGET Comedi::Comedi APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
		set_target_properties(Comedi::Comedi PROPERTIES IMPORTED_LOCATION_RELEASE "${Comedi_LIBRARY_RELEASE}")
	endif()

	if(Comedi_LIBRARY_DEBUG)
		set_property(TARGET Comedi::Comedi APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG)
		set_target_properties(Comedi::Comedi PROPERTIES IMPORTED_LOCATION_DEBUG "${Comedi_LIBRARY_DEBUG}")
	endif()

	set_target_properties(
		Comedi::Comedi PROPERTIES
		INTERFACE_COMPILE_DEFINITIONS "${Comedi_DEFINITIONS}"
		INTERFACE_INCLUDE_DIRECTORIES "${Comedi_INCLUDE_DIRS}"
	)
endif()

repository: hitersyw/rl

repo_name: hitersyw/rl


text:
inherit esw_examples features_check

REQUIRED_MACHINE_FEATURES = "uartpsv"

ESW_COMPONENT_SRC = "/XilinxProcessorIPLib/drivers/uartpsv/examples/"

repository: Xilinx/meta-xilinx

repo_name: Xilinx/meta-xilinx

gha_language: C


text:
@InProceedings{caragiannis16,
  supplementary = {Supplementary:caragiannis16-supp.pdf},
  title = {Truthful Univariate Estimators},
  author = {Ioannis Caragiannis and Ariel Procaccia and Nisarg Shah},
  pages = {127-135},
  abstract = {We revisit the classic problem of estimating the population mean of an unknown single-dimensional distribution from samples, taking a game-theoretic viewpoint. In our setting, samples are supplied by strategic agents, who wish to pull the estimate as close as possible to their own value. In this setting, the sample mean gives rise to manipulation opportunities, whereas the sample median does not. Our key question is whether the sample median is the best (in terms of mean squared error) truthful estimator of the population mean. We show that when the underlying distribution is symmetric, there are truthful estimators that dominate the median. Our main result is a characterization of worst-case optimal truthful estimators, which provably outperform the median, for possibly asymmetric distributions with bounded support.},
}


text:
@misc{SerializedElementArrays.jl,
	author  = {Matthew Fishman <mfishman@flatironinstitute.org> and contributors},
	title   = {SerializedElementArrays.jl},
	url     = {https://github.com/mtfishman/SerializedElementArrays.jl},
	version = {v0.1.0},
	year    = {2021},
	month   = {5}
}

gha_language: Julia


text:
DESCRIPTION = "A Software Construction Tool"
SECTION = "devel/python"
PRIORITY = "optional"
MAINTAINER = "Michael 'Mickey' Lauer <mickey@Vanille.de>"
LICENSE = "GPL"
SRCNAME = "scons"

SRC_URI = "${SOURCEFORGE_MIRROR}/scons/scons-${PV}.tar.gz"
S = "${WORKDIR}/${SRCNAME}-${PV}"

inherit distutils


text:
SUMMARY = "An Asynchronous Library for the KNX protocol."
HOMEPAGE = "http://xknx.io/"
LICENSE = "MIT"
# TODO: https://github.com/XKNX/xknx/pull/59
LIC_FILES_CHKSUM = "file://setup.py;md5=ce65d562e2131a98db609f7ccb0db9cf"

inherit pypi setuptools3

SRC_URI[md5sum] = "1406ad1dfbe1b0bafae2e23e6d233fec"
SRC_URI[sha256sum] = "4b48b2ac9bae2ff2d1c3870ebac25f3fb1f0d9b0884b1d95724c7f04e014ba4a"

RDEPENDS_${PN} = "${PYTHON_PN}-pyyaml ${PYTHON_PN}-netifaces ${PYTHON_PN}-multidict ${PYTHON_PN}-yarl"

repository: bluelightning/meta-homeassistant

repo_name: bluelightning/meta-homeassistant


text:
@article{zerocash,
    author = "Eli Ben-Sasson and Alessandro Chiesa and Christina Garman and Matthew Green and Ian Miers and Eran Tromer and Madars Virza",
    title = "{Zerocash: Decentralized Anonymous Payments from Bitcoin}",
    journal = "IEEE Symposium on Security and Privacy",
    pages = "459--474",
    year = "2014",
}

@article{zerocoin,
    author = "Ian Miers and Christina Garman and Matthew Green and Aviel D. Rubin",
    title = "{Zerocoin: Anonymous Distributed E-Cash from Bitcoin}",
    journal = "IEEE Symposium on Security and Privacy",
    pages = "397--411",
    year = "2013",
}

@manual{bitcoin,
    author = "Satoshi Nakamoto",
    title = "{Bitcoin: A Peer-to-Peer Electronic Cash System}",
    url = "https://bitcoin.org/bitcoin.pdf",
}

@manual{coda,
    author = "Joseph Bonneau and Izaak Meckler and Vanishree Rao and Evan Shapiro",
    title = "{Coda: Decentralized Cryptocurrency at Scale}",
    year = "2018",
    url = "https://eprint.iacr.org/2020/352.pdf",
}

@manual{zeth,
    author = "Antoine Rondelet and Michal Zajac",
    title = "{ZETH: On Integrating Zerocash on Ethereum}",
    year = "2019",
    url = "https://arxiv.org/pdf/1904.00905.pdf",
}

@InProceedings{zk-snarks-blockchains-chapter,
author="Pinto, Alexandre Miranda",
editor="Pardalos, Panos
and Kotsireas, Ilias
and Guo, Yike
and Knottenbelt, William",
title="An Introduction to the Use of zk-SNARKs in Blockchains",
booktitle="Mathematical Research for Blockchain Economy",
year="2020",
publisher="Springer International Publishing",
address="Cham",
pages="233--249",
abstract="The advent of blockchain brings a wide horizon of opportunities to the world. The first such example, Bitcoin, strongly advocates a principle of total openness, which is reflected in the fact that all transactions are public and the history of each account can easily be reconstructed. Although an account cannot immediately be linked to a real-world identity, this does not grant strong guarantees of anonymity, and such a feature of Bitcoin and similar blockchains prevents it from reaching wide acceptance for financial use-cases, where users often desire strong confidentiality of their balances and financial history. As a consequence, there has recently been a growing interest in privacy-enhancing technologies that ensure public permissionless blockchains can keep the details of transactions private according to particular use cases. One of the most promising technologies in this area is Zero-Knowledge Proofs, and in particular zk-SNARKs, due to their very short proofs and verification times. This makes them well suited to be used as transaction data, hiding all the private details at the same time they guarantee the integrity and accuracy of the transaction, and to be verified on-chain by a smart contract. This paper is an introductory presentation of this topic, what advantages zk-SNARKs bring to the blockchain ecosystem and how they can be tailored to specific applications.",
isbn="978-3-030-37110-4"
}


text:
/*
    Problem Statement

    Given an array with n elements, can you sort this array in ascending order using just one of
    the following operations? You can perform only one of the following operations:
    1. Swap two elements.
    2. Reverse one sub-segment

    Input Format
    The first line contains a single integer n, which indicates the size of the array.
    The next line contains n integers seperated by spaces.

    n
    d1 d2 ... dn

    Constraints

    2 <= n <= 100000
    0 <= di <= 1000000

    All di are distinct.

    Output Format

        If the array is already sorted, output 'yes' in the first line.
        You do not need to output anything else.
        If you can sort this array using one single operation (from the two permitted operations):

        a. If you can sort the array by swap dl and dr, output "swap l r" in the second line. l and r are the indices of the elements to be swapped, assuming that the array is indexed from 1 to n.
        b. Else if it is possible to sort the array by reversing the segment d[l...r], output "reverse l r" in the second line. l and r are the indices of the first and last elements of the subsequence to be reversed, assuming that the array is indexed from 1 to n.

        d[l...r] represents the sub-sequence of the array, beginning at index l and ending at index r; inclusive of both.

        If an array can be sorted by either swapping or reversing, stick to the swap based method.

        If you cannot sort the array in either of the above ways, output "no" in the first line.

    Sample Input #1
    2
    4 2
    2 4
    ---
    2 2

    Sample Output #1
    yes
    swap 1 2

    Sample Input #2
    3
    3 1 2

    Sample Output #2
    no

    Sample Input #3
    6
    1 5 4 3 2 6

    Sample Output #3
    yes
    reverse 2 5

    Explanation

    For #1: You can both swap(1, 2) and reverse(1, 2), but if you can sort the array but swap, output swap only.
    For #2: It is impossible to sort by one single operation (among those permitted).
    For #3, You can reverse the sub-array d[2...5] = "5 4 3 2" then the array become sorted.

    1 5 4 3 2 6
    1 2 3 4 5 6
*/

package main

import (
    "fmt"
    "bufio"
    "os"
    "math"
)

func sort(arr []int) []int {
    l := len(arr)

    if l <= 1 {
        return arr
    }

    left := make([]int, 0)
    right := make([]int, 0)
    m := ceilDiv(l, 2)

    left = append(left, arr[0:m]...)
    right = append(right, arr[m:l]...)

    nLeft := sort(left)
    nRight := sort(right)

    return merge(nLeft, nRight)
}

func merge(left, right []int) []int {
    li := 0
    ri := 0
    ll := len(left)
    rl := len(right)

    mergeArr := make([]int, 0)

    for li < ll && ri < rl {
        if left[li] < right[ri] {
            mergeArr = append(mergeArr, left[li])
            li++
        } else {
            mergeArr = append(mergeArr, right[ri])
            ri++
        }
    }
    for li < ll {
        mergeArr = append(mergeArr, left[li])
        li++
    }
    for ri < rl {
        mergeArr = append(mergeArr, right[ri])
        ri++
    }

    return mergeArr
}

func ceilDiv(a, b int) int {
    return int(math.Ceil(float64(a) / float64(b)))
}

func almostSorted(sarr, arr []int) string {
    i := 0
    l := len(arr)
    j := l - 1
    br := 0

    for i < j && br < 2 {
        br = 0

        if arr[i] == sarr[i] {
            i++
        } else {
            br++
        }

        if arr[j] == sarr[j] {
            j--
        } else {
            br++
        }
    }

    if i == j {
        return fmt.Sprint("yes")
    }

    ii := i + 1
    ij := j + 1
    times := 0

    br = 0

    for i < j && br < 1 {
        br = 0

        if arr[i] == sarr[j] && arr[j] == sarr[i] {
            times++
            i++
            j--
        } else {
            br++
        }
    }

    if i >= j {
        if times == 1 {
            return fmt.Sprintf("yes\nswap %v %v", ii, ij)
        }
        return fmt.Sprintf("yes\nreverse %v %v", ii, ij)
    }

    br = 0
    for i < j && br < 1 {
        if abs(sarr[i], arr[i]) == abs(sarr[j], arr[j]) {
            i++
            j--
        } else {
            br++
        }
    }

    if i >= j {
        return fmt.Sprintf("yes\nswap %v %v", ii, ij)
    }

    return "no"
}

func abs(x, y int) int {
    if x > y {
        return x - y
    }

    return y - x
}

func main() {
    var n int
    io := bufio.NewReader(os.Stdin)
    fmt.Fscan(io, &n)

    arr := make([]int, n)

    for i := 0; i < n; i++ {
        fmt.Fscan(io, &arr[i])
    }

    fmt.Println( almostSorted(sort(arr), arr) )
}

repository: bat-here/Unimoved

repo_name: bat-here/Unimoved

gha_language: Ruby

extension: go


text:
'use strict';

angular.module('core')
	//  Creating the service which stores the list of games in the DB as well as performs REST functions
	.factory('games', ['$http', function ($http) {
		//  Initializing the games variable to include a list of two games by default
		var o = {
			games: [
				{
					name: "Sonic",
					developer: "Sega",
					year: 1991
				},
				{
					name: "Mega Man",
					developer: "Capcom",
					year: 1986
				}
			]
		};
		//  Gets the games in the DB and replaces the list of games in the service with the games in the DB
		o.getAll = function () {
			return $http.get('/games').success(function(data) {
				angular.copy(data, o.games);
			});
		};
		//  Creates a new game in the DB
		o.create = function (game) {
			return $http.post('/games', game).success(function(data){
				o.games.push(data);
			});
		};
		//  Get's a specific game's information such as list of issues
		o.get = function (id) {
			return $http.get('/games/' + id).then(function(res) {
				return res.data;
				// console.log('hi');
				// return {name: "Jake"};
			});
		};
		//  Add's an issue to a game
		o.addIssue = function (id, issue) {
			return $http.post('/games/' + id + '/issues', issue);
		};
		//  Get's a specific issue's information such as comments and body
		o.getIssue = function (gameId, issueId) {
			return $http.get('/games/' + gameId + '/issues/' + issueId).then(function(res) {
				return res.data;
			});
		};
		//  Adds a comment to an issue
		o.addComment = function (gameId, issueId, comment) {
			return $http.post('/games/' + gameId + '/issues/' + issueId, comment);
		};
		//  Looks for a game in the DB using a string of search text
		o.searchGames = function(searchText) {
			return $http.get('/search/' + searchText);
		};
		//  Adds an upvote to an issue of a specified game
		o.upvoteIssue = function(gameId, issueId) {
			return $http.put('/games/' + gameId + '/issues/' + issueId + '/upvote').success(function(data){
				// console.log(data);
			});
		};
		//  Upvotes a comment of a specified issue
		o.upvoteComment = function(gameId, issueId, commentId) {
			return $http.put('/games/' + gameId + '/issues/' + issueId + '/comments/' + commentId + '/upvote').success(function(data){
				console.log("yay");
			});
		};
		//  Returns the service allowing the app to use these functions
		return o;
	}]);

repository: YSNIS/FeaturesAndFixes

repo_name: YSNIS/FeaturesAndFixes


text:
@book{hatcher_2002,
  author    = {Hatcher, Allen},
  publisher = {Cambridge University Press},
  date      = {2002},
  title     = {Algebraic Topology},
}

@book{munkres_2018,
  author    = {Munkres, James Raymond},
  publisher = {Pearson},
  date      = {2018},
  title     = {Topology},
}

repository: dzackgarza/Qual-Review-and-Solutions

repo_name: dzackgarza/Qual-Review-and-Solutions


text:
@article{steiner2003rapid,
 author = {Steiner, Wes E and Clowers, Brian H and Hill, Herbert H},
 doi = {10.1007/s00216-002-1622-2},
 journal = {Analytical and bioanalytical chemistry},
 number = {1},
 pages = {99--102},
 publisher = {Springer-Verlag},
 title = {Rapid separation of phenylthiohydantoin amino acids: ambient pressure ion-mobility mass spectrometry (IMMS)},
 volume = {375},
 year = {2003}
}

repository: bhclowers/academic-clowers

repo_name: bhclowers/academic-clowers


text:
/*
 * Created by Dumitrana Alinus
 * User: alin.designstudio
 * For: Results Page
 * License: Wooter LLC.
 * Date: 2016.01.25
 * Description: Results Page
 *
 */
__Wooter.controller('Search/SearchController', ['$scope', 'Page', '$stateParams', 'ZIP', 'CONFIGS', '$cookies', '$http', '$filter', 'STORE', function ($scope, Page, $stateParams, ZIP, CONFIGS, $cookies, $http, $filter, STORE) {

    /*
     * Clean all previous Assets
     */
    Page.reset();

    /*
     * Add stylesheet
     */
    Page.stylesheets(['css/results.css']);

    /*
     * Get zip value
     */
    var $zip = ZIP.get();

    /*
     * Generate Ages options
     */
    function generateAges(){
        var a = 0,
            b = [{
                val: 'all',
                text: 'All Ages'
            }];

        while(a <= 50){
            b.push({
                val: a+'-'+(a+9),
                text: a+' - '+(a+9)
            });

            a += 10;
        }

        b.push({
            val: '60+',
            text: '60+'
        });

        return b;
    }

    /*
     * Generate Distance options
     */
    function generateDistance(){
        var a = ['2.5', '5', '10', '25'];
        var b = [];

        angular.forEach(a, function(value){
            b.push({
                val: value,
                text: value+' Miles'
            });
        });

        b.push({
            val: '10000',
            text: '50+ Miles'
        });

        return b;
    }

    /*
     * Generate Genders options
     */
    function generateGenders(){
        return [
            { val: 'male', text: "Male" },
            { val: 'female', text: "Female" },
            { val: 'all', text: "All Genders" }
        ];
    }

    /*
     * Generate Sort methods
     */
    function generateSortMethods(){
        var a = ['distance', 'price'];
        var b = [];

        angular.forEach(a, function(value){
            b.push({
                val: value+'-asc',
                text: capitalize(value+' Ascending')
            });
            b.push({
                val: value+'-desc',
                text: capitalize(value+' Descending')
            });
        });

        return b;
    }

    /*
     * Generate Sports options
     */
    function generateSports(){
        var a = [
            'football',
            'hockey',
            'basketball',
            'tennis',
            'baseball',
            'soccer',
            'kickball',
            'softball',
            'bowling',
            'dodgeball',
            'volleyball'
        ];

        var b = [{
            val: 'all',
            text: "All Sports"
        }];

        angular.forEach(a, function(value){
            b.push({
                val: value,
                text: capitalize(value)
            })
        });

        return b;
    }

    /*
     * Delete null/undefined/empty values
     */
    function cleanParams (obj){
        var ret = [];
        if (check_type(obj, 'object')) {

            angular.forEach(obj, function(val, key){
                if (obj[key]) {
                    ret[key] = val;
                }
            });

            ret.length = count(ret);
        }

        return ret;
    }

    $scope.search = {
        /*
         * Default values for search
         */
        defaults: {
            ages: "all",
            distance: "10000",
            gender: "all",
            location: $zip,
            search: "",
            sort: "distance-asc",
            sport: "all"
        }
    };

    /*
     * Form Model
     */
    $scope.search.params = angular.extend($scope.search.defaults, cleanParams($stateParams));

    // For multiple sports select
    //$scope.search.params.sports = $scope.search.params.sports.split(',');

    /*
     * Engine, start creating search event
     */
    $scope.execSearch = function(){
        Search.setLocation($scope.search.params);
    };

    $scope.Input ={
        leave: function($e){
            if (window.temp.inputVal && $e.target.value != window.temp.inputVal) {
                $scope.execSearch()
            }
        },
        open: function($e){
            window.temp = {
                inputVal: $e.target.value
            }
        },
        key: function($e){
            if($e.which == 13){
                $e.target.blur()
            }
        }
    };

    $scope.results = {};

    $scope.filters = {};
    $scope.filters.genders = generateGenders();
    $scope.filters.ages = generateAges();
    $scope.filters.distances = generateDistance();
    $scope.filters.sort = generateSortMethods();
    $scope.filters.sports = generateSports();

    $scope.getAgesOf = function(min, max){
        var vmin = (min > max)?max:min,
            vmax = (min > max)?min:max,
            $ret;

        if(vmax == 99){
            if(vmin > 3){
                $ret = 'Ages '+vmin+'+';
            } else {
                $ret = "All Ages"
            }
        } else {
            $ret = 'Ages '+vmin+'-'+vmax;
        }

        return $ret;
    };

    $scope.getDeadlineOf = function(d){
        var $ret = new Date(d);
        var year = $filter('date')($ret, 'yyyy');
        $ret = $filter('date')($ret, 'MMM dd');
        $ret += ", " +year;

        return 'Deadline: '+$ret;
    };

    $scope.coords = {};

    $scope.getCoordinates = function(){
        return $scope.coords;
    };

    $scope.getDistanceOf = function(lat, lon){

        var mile = 1.609344;

        var toRad = function (v){
            return v * Math.PI / 180;
        };

        var coordsUser = $scope.getCoordinates();

        var coordsResult = {
            latitude: lat,
            longitude: lon
        };

        /*
         * Earth Radius
         */
        var R = 6371;

        var dLat = toRad(coordsResult.latitude - coordsUser.latitude);
        var dLon = toRad(coordsResult.longitude - coordsUser.longitude);
        var lat1 = toRad(coordsUser.latitude);
        var lat2 = toRad(coordsResult.latitude);

        var a = Math.sin(dLat/2) * Math.sin(dLat/2) + Math.sin(dLon/2) * Math.sin(dLon/2) * Math.cos(lat1) * Math.cos(lat2);

        var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a));

        var d = R * c;

        return (d/mile).toFixed(1) + " mi";

    };

    $scope.openLeague = function(e){
        window.location = '/league/'+parseInt(e);
        return false;
    };

    var Filter = {
        Clean: {
            ages: function(ages){
                ages = ages.split('-');
                if (ages.length == 1) {
                    ages = {
                        min_age: 60,
                        max_age: 99
                    }
                } else {
                    ages = {
                        min_age: ages[0],
                        max_age: ages[1]
                    }
                }
                return ages;
            }
        }
    };

    /*
     * Identifiers for loader and message container
     */
    var loader = '#resultsSection .loader';
    var errorContainer = '#messageErrorSection';

    /*
     * Control Loader
     */
    var LOADER = {
        show: function(el){
            var ele = document.querySelector(el);
            ele.classList.add('show');
        },
        hide: function(el){
            var ele = document.querySelector(el);
            ele.classList.remove('show');
        },
        toggle: function(el){
            var ele = document.querySelector(el);
            ele.classList.toggle('show');
        }
    };

    /*
     * Control Error message
     */
    var ERROR = {
        show: function(el){
            var ele = document.querySelector(el);
            ele.classList.add('db');
            LOADER.hide(loader);
            setTimeout(function(){
                ele.classList.add('show');
            },50);
        },
        hide: function(el){
            var ele = document.querySelector(el);
            ele.classList.remove('show');
            setTimeout(function(){
                ele.classList.remove('db');
            },50);
        }
    };

    var Search = {
        /*
         * Api route to search request
         */
        apiRoute: '/api/search',
        /*
         * Method to Cache params into window url
         */
        setLocation: function (data) {
            window.location.hash = '#/results?'+serializeObject(data);
        }
    };

    /*
     * Object to get data instance with params for search request
     */
    Search.getParams = function (str) {
        var coords = $scope.getCoordinates();
        var ages = Filter.Clean.ages(str.ages);

        return {
            name: STORE().session.get('searchString'),
            zip: str.location,
            minAge: ages.min_age,
            maxAge: ages.max_age,
            longitude: coords.longitude,
            latitude: coords.latitude,
            distance: str.distance,
            sport: str.sport,
            gender: str.gender
        };
    };

    /*
     * Put Data from request to result container
     *
     * @param {object} $data
     */
    Search.putData = function($data){

        Page.favicon.badge.setBadge($data.data.length);

        if($data.data.length > 0){
            debugger;
            $scope.results = $data.data;

            setTimeout(function(){
                LOADER.hide(loader);
                ERROR.hide(errorContainer);
            }, 200);

        } else {

            $scope.results = [];

            setTimeout(function(){
                ERROR.show(errorContainer);
            }, 200);

        }

    };

    /*
     * Primary method to execute search request
     */
    Search.execSearch = function(){
        var params = Search.getParams($scope.search.params);
        Page.title( ( (params.name)?params.name+' - ':'' ) + 'Results  |  Wooter');

        LOADER.show(loader);

        /*
         * Api Request
         */
        $http({
            url: Search.apiRoute,
            method: "POST",
            data: params
        }).then(function success(res){
            Search.putData(res.data);
        }, function error(res){
            ERROR.show(errorContainer)
        });

    };

    /*
     * Create search request when page open (or link data is changed)
     * executed just if coordonates have setted
     */
    var checkingCoords = setInterval(function () {
        if(window.$$store.local.check('coords')){
            $scope.coords = angular.fromJson(window.$$store.local.get('coords'));
            Search.execSearch();
            clearInterval(checkingCoords);
        }
    }, 50);

}]);

repository: mdesilva/wooter

repo_name: mdesilva/wooter