text:
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: google/storagetransfer/v1/transfer.proto

/*
Package storagetransfer is a generated protocol buffer package.

It is generated from these files:
	google/storagetransfer/v1/transfer.proto
	google/storagetransfer/v1/transfer_types.proto

It has these top-level messages:
	GetGoogleServiceAccountRequest
	CreateTransferJobRequest
	UpdateTransferJobRequest
	GetTransferJobRequest
	ListTransferJobsRequest
	ListTransferJobsResponse
	PauseTransferOperationRequest
	ResumeTransferOperationRequest
	GoogleServiceAccount
	AwsAccessKey
	ObjectConditions
	GcsData
	AwsS3Data
	HttpData
	TransferOptions
	TransferSpec
	Schedule
	TransferJob
	ErrorLogEntry
	ErrorSummary
	TransferCounters
	TransferOperation
*/
package storagetransfer

import proto "github.com/golang/protobuf/proto"
import fmt "fmt"
import math "math"
import _ "google.golang.org/genproto/googleapis/api/annotations"
import google_protobuf1 "github.com/golang/protobuf/ptypes/empty"
import google_protobuf2 "google.golang.org/genproto/protobuf/field_mask"

import (
	context "golang.org/x/net/context"
	grpc "google.golang.org/grpc"
)

// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf

// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package

// Request passed to GetGoogleServiceAccount.
type GetGoogleServiceAccountRequest struct {
	// The ID of the Google Cloud Platform Console project that the Google service
	// account is associated with.
	// Required.
	ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId" json:"project_id,omitempty"`
}

func (m *GetGoogleServiceAccountRequest) Reset()                    { *m = GetGoogleServiceAccountRequest{} }
func (m *GetGoogleServiceAccountRequest) String() string            { return proto.CompactTextString(m) }
func (*GetGoogleServiceAccountRequest) ProtoMessage()               {}
func (*GetGoogleServiceAccountRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{0} }

func (m *GetGoogleServiceAccountRequest) GetProjectId() string {
	if m != nil {
		return m.ProjectId
	}
	return ""
}

// Request passed to CreateTransferJob.
type CreateTransferJobRequest struct {
	// The job to create.
	// Required.
	TransferJob *TransferJob `protobuf:"bytes,1,opt,name=transfer_job,json=transferJob" json:"transfer_job,omitempty"`
}

func (m *CreateTransferJobRequest) Reset()                    { *m = CreateTransferJobRequest{} }
func (m *CreateTransferJobRequest) String() string            { return proto.CompactTextString(m) }
func (*CreateTransferJobRequest) ProtoMessage()               {}
func (*CreateTransferJobRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{1} }

func (m *CreateTransferJobRequest) GetTransferJob() *TransferJob {
	if m != nil {
		return m.TransferJob
	}
	return nil
}

// Request passed to UpdateTransferJob.
type UpdateTransferJobRequest struct {
	// The name of job to update.
	// Required.
	JobName string `protobuf:"bytes,1,opt,name=job_name,json=jobName" json:"job_name,omitempty"`
	// The ID of the Google Cloud Platform Console project that owns the job.
	// Required.
	ProjectId string `protobuf:"bytes,2,opt,name=project_id,json=projectId" json:"project_id,omitempty"`
	// The job to update. `transferJob` is expected to specify only three fields:
	// `description`, `transferSpec`, and `status`.  An UpdateTransferJobRequest
	// that specifies other fields will be rejected with an error
	// `INVALID_ARGUMENT`.
	// Required.
	TransferJob *TransferJob `protobuf:"bytes,3,opt,name=transfer_job,json=transferJob" json:"transfer_job,omitempty"`
	// The field mask of the fields in `transferJob` that are to be updated in
	// this request.  Fields in `transferJob` that can be updated are:
	// `description`, `transferSpec`, and `status`.  To update the `transferSpec`
	// of the job, a complete transfer specification has to be provided. An
	// incomplete specification which misses any required fields will be rejected
	// with the error `INVALID_ARGUMENT`.
	UpdateTransferJobFieldMask *google_protobuf2.FieldMask `protobuf:"bytes,4,opt,name=update_transfer_job_field_mask,json=updateTransferJobFieldMask" json:"update_transfer_job_field_mask,omitempty"`
}

func (m *UpdateTransferJobRequest) Reset()                    { *m = UpdateTransferJobRequest{} }
func (m *UpdateTransferJobRequest) String() string            { return proto.CompactTextString(m) }
func (*UpdateTransferJobRequest) ProtoMessage()               {}
func (*UpdateTransferJobRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{2} }

func (m *UpdateTransferJobRequest) GetJobName() string {
	if m != nil {
		return m.JobName
	}
	return ""
}

func (m *UpdateTransferJobRequest) GetProjectId() string {
	if m != nil {
		return m.ProjectId
	}
	return ""
}

func (m *UpdateTransferJobRequest) GetTransferJob() *TransferJob {
	if m != nil {
		return m.TransferJob
	}
	return nil
}

func (m *UpdateTransferJobRequest) GetUpdateTransferJobFieldMask() *google_protobuf2.FieldMask {
	if m != nil {
		return m.UpdateTransferJobFieldMask
	}
	return nil
}

// Request passed to GetTransferJob.
type GetTransferJobRequest struct {
	// The job to get.
	// Required.
	JobName string `protobuf:"bytes,1,opt,name=job_name,json=jobName" json:"job_name,omitempty"`
	// The ID of the Google Cloud Platform Console project that owns the job.
	// Required.
	ProjectId string `protobuf:"bytes,2,opt,name=project_id,json=projectId" json:"project_id,omitempty"`
}

func (m *GetTransferJobRequest) Reset()                    { *m = GetTransferJobRequest{} }
func (m *GetTransferJobRequest) String() string            { return proto.CompactTextString(m) }
func (*GetTransferJobRequest) ProtoMessage()               {}
func (*GetTransferJobRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{3} }

func (m *GetTransferJobRequest) GetJobName() string {
	if m != nil {
		return m.JobName
	}
	return ""
}

func (m *GetTransferJobRequest) GetProjectId() string {
	if m != nil {
		return m.ProjectId
	}
	return ""
}

// `project_id`, `job_names`, and `job_statuses` are query parameters that can
// be specified when listing transfer jobs.
type ListTransferJobsRequest struct {
	// A list of query parameters specified as JSON text in the form of
	// {"project_id":"my_project_id",
	// "job_names":["jobid1","jobid2",...],
	// "job_statuses":["status1","status2",...]}.
	// Since `job_names` and `job_statuses` support multiple values, their values
	// must be specified with array notation. `project_id` is required. `job_names`
	// and `job_statuses` are optional.  The valid values for `job_statuses` are
	// case-insensitive: `ENABLED`, `DISABLED`, and `DELETED`.
	Filter string `protobuf:"bytes,1,opt,name=filter" json:"filter,omitempty"`
	// The list page size. The max allowed value is 256.
	PageSize int32 `protobuf:"varint,4,opt,name=page_size,json=pageSize" json:"page_size,omitempty"`
	// The list page token.
	PageToken string `protobuf:"bytes,5,opt,name=page_token,json=pageToken" json:"page_token,omitempty"`
}

func (m *ListTransferJobsRequest) Reset()                    { *m = ListTransferJobsRequest{} }
func (m *ListTransferJobsRequest) String() string            { return proto.CompactTextString(m) }
func (*ListTransferJobsRequest) ProtoMessage()               {}
func (*ListTransferJobsRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{4} }

func (m *ListTransferJobsRequest) GetFilter() string {
	if m != nil {
		return m.Filter
	}
	return ""
}

func (m *ListTransferJobsRequest) GetPageSize() int32 {
	if m != nil {
		return m.PageSize
	}
	return 0
}

func (m *ListTransferJobsRequest) GetPageToken() string {
	if m != nil {
		return m.PageToken
	}
	return ""
}

// Response from ListTransferJobs.
type ListTransferJobsResponse struct {
	// A list of transfer jobs.
	TransferJobs []*TransferJob `protobuf:"bytes,1,rep,name=transfer_jobs,json=transferJobs" json:"transfer_jobs,omitempty"`
	// The list next page token.
	NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken" json:"next_page_token,omitempty"`
}

func (m *ListTransferJobsResponse) Reset()                    { *m = ListTransferJobsResponse{} }
func (m *ListTransferJobsResponse) String() string            { return proto.CompactTextString(m) }
func (*ListTransferJobsResponse) ProtoMessage()               {}
func (*ListTransferJobsResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{5} }

func (m *ListTransferJobsResponse) GetTransferJobs() []*TransferJob {
	if m != nil {
		return m.TransferJobs
	}
	return nil
}

func (m *ListTransferJobsResponse) GetNextPageToken() string {
	if m != nil {
		return m.NextPageToken
	}
	return ""
}

// Request passed to PauseTransferOperation.
type PauseTransferOperationRequest struct {
	// The name of the transfer operation.
	// Required.
	Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
}

func (m *PauseTransferOperationRequest) Reset()                    { *m = PauseTransferOperationRequest{} }
func (m *PauseTransferOperationRequest) String() string            { return proto.CompactTextString(m) }
func (*PauseTransferOperationRequest) ProtoMessage()               {}
func (*PauseTransferOperationRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{6} }

func (m *PauseTransferOperationRequest) GetName() string {
	if m != nil {
		return m.Name
	}
	return ""
}

// Request passed to ResumeTransferOperation.
type ResumeTransferOperationRequest struct {
	// The name of the transfer operation.
	// Required.
	Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
}

func (m *ResumeTransferOperationRequest) Reset()                    { *m = ResumeTransferOperationRequest{} }
func (m *ResumeTransferOperationRequest) String() string            { return proto.CompactTextString(m) }
func (*ResumeTransferOperationRequest) ProtoMessage()               {}
func (*ResumeTransferOperationRequest) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{7} }

func (m *ResumeTransferOperationRequest) GetName() string {
	if m != nil {
		return m.Name
	}
	return ""
}

func init() {
	proto.RegisterType((*GetGoogleServiceAccountRequest)(nil), "google.storagetransfer.v1.GetGoogleServiceAccountRequest")
	proto.RegisterType((*CreateTransferJobRequest)(nil), "google.storagetransfer.v1.CreateTransferJobRequest")
	proto.RegisterType((*UpdateTransferJobRequest)(nil), "google.storagetransfer.v1.UpdateTransferJobRequest")
	proto.RegisterType((*GetTransferJobRequest)(nil), "google.storagetransfer.v1.GetTransferJobRequest")
	proto.RegisterType((*ListTransferJobsRequest)(nil), "google.storagetransfer.v1.ListTransferJobsRequest")
	proto.RegisterType((*ListTransferJobsResponse)(nil), "google.storagetransfer.v1.ListTransferJobsResponse")
	proto.RegisterType((*PauseTransferOperationRequest)(nil), "google.storagetransfer.v1.PauseTransferOperationRequest")
	proto.RegisterType((*ResumeTransferOperationRequest)(nil), "google.storagetransfer.v1.ResumeTransferOperationRequest")
}

// Reference imports to suppress errors if they are not otherwise used.
var _ context.Context
var _ grpc.ClientConn

// This is a compile-time assertion to ensure that this generated file
// is compatible with the grpc package it is being compiled against.
const _ = grpc.SupportPackageIsVersion4

// Client API for StorageTransferService service

type StorageTransferServiceClient interface {
	// Returns the Google service account that is used by Storage Transfer
	// Service to access buckets in the project where transfers
	// run or in other projects. Each Google service account is associated
	// with one Google Cloud Platform Console project. Users
	// should add this service account to the Google Cloud Storage bucket
	// ACLs to grant access to Storage Transfer Service. This service
	// account is created and owned by Storage Transfer Service and can
	// only be used by Storage Transfer Service.
	GetGoogleServiceAccount(ctx context.Context, in *GetGoogleServiceAccountRequest, opts ...grpc.CallOption) (*GoogleServiceAccount, error)
	// Creates a transfer job that runs periodically.
	CreateTransferJob(ctx context.Context, in *CreateTransferJobRequest, opts ...grpc.CallOption) (*TransferJob, error)
	// Updates a transfer job. Updating a job's transfer spec does not affect
	// transfer operations that are running already. Updating the scheduling
	// of a job is not allowed.
	UpdateTransferJob(ctx context.Context, in *UpdateTransferJobRequest, opts ...grpc.CallOption) (*TransferJob, error)
	// Gets a transfer job.
	GetTransferJob(ctx context.Context, in *GetTransferJobRequest, opts ...grpc.CallOption) (*TransferJob, error)
	// Lists transfer jobs.
	ListTransferJobs(ctx context.Context, in *ListTransferJobsRequest, opts ...grpc.CallOption) (*ListTransferJobsResponse, error)
	// Pauses a transfer operation.
	PauseTransferOperation(ctx context.Context, in *PauseTransferOperationRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
	// Resumes a transfer operation that is paused.
	ResumeTransferOperation(ctx context.Context, in *ResumeTransferOperationRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
}

type storageTransferServiceClient struct {
	cc *grpc.ClientConn
}

func NewStorageTransferServiceClient(cc *grpc.ClientConn) StorageTransferServiceClient {
	return &storageTransferServiceClient{cc}
}

func (c *storageTransferServiceClient) GetGoogleServiceAccount(ctx context.Context, in *GetGoogleServiceAccountRequest, opts ...grpc.CallOption) (*GoogleServiceAccount, error) {
	out := new(GoogleServiceAccount)
	err := grpc.Invoke(ctx, "/google.storagetransfer.v1.StorageTransferService/GetGoogleServiceAccount", in, out, c.cc, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *storageTransferServiceClient) CreateTransferJob(ctx context.Context, in *CreateTransferJobRequest, opts ...grpc.CallOption) (*TransferJob, error) {
	out := new(TransferJob)
	err := grpc.Invoke(ctx, "/google.storagetransfer.v1.StorageTransferService/CreateTransferJob", in, out, c.cc, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *storageTransferServiceClient) UpdateTransferJob(ctx context.Context, in *UpdateTransferJobRequest, opts ...grpc.CallOption) (*TransferJob, error) {
	out := new(TransferJob)
	err := grpc.Invoke(ctx, "/google.storagetransfer.v1.StorageTransferService/UpdateTransferJob", in, out, c.cc, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *storageTransferServiceClient) GetTransferJob(ctx context.Context, in *GetTransferJobRequest, opts ...grpc.CallOption) (*TransferJob, error) {
	out := new(TransferJob)
	err := grpc.Invoke(ctx, "/google.storagetransfer.v1.StorageTransferService/GetTransferJob", in, out, c.cc, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *storageTransferServiceClient) ListTransferJobs(ctx context.Context, in *ListTransferJobsRequest, opts ...grpc.CallOption) (*ListTransferJobsResponse, error) {
	out := new(ListTransferJobsResponse)
	err := grpc.Invoke(ctx, "/google.storagetransfer.v1.StorageTransferService/ListTransferJobs", in, out, c.cc, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *storageTransferServiceClient) PauseTransferOperation(ctx context.Context, in *PauseTransferOperationRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
	out := new(google_protobuf1.Empty)
	err := grpc.Invoke(ctx, "/google.storagetransfer.v1.StorageTransferService/PauseTransferOperation", in, out, c.cc, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *storageTransferServiceClient) ResumeTransferOperation(ctx context.Context, in *ResumeTransferOperationRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
	out := new(google_protobuf1.Empty)
	err := grpc.Invoke(ctx, "/google.storagetransfer.v1.StorageTransferService/ResumeTransferOperation", in, out, c.cc, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

// Server API for StorageTransferService service

type StorageTransferServiceServer interface {
	// Returns the Google service account that is used by Storage Transfer
	// Service to access buckets in the project where transfers
	// run or in other projects. Each Google service account is associated
	// with one Google Cloud Platform Console project. Users
	// should add this service account to the Google Cloud Storage bucket
	// ACLs to grant access to Storage Transfer Service. This service
	// account is created and owned by Storage Transfer Service and can
	// only be used by Storage Transfer Service.
	GetGoogleServiceAccount(context.Context, *GetGoogleServiceAccountRequest) (*GoogleServiceAccount, error)
	// Creates a transfer job that runs periodically.
	CreateTransferJob(context.Context, *CreateTransferJobRequest) (*TransferJob, error)
	// Updates a transfer job. Updating a job's transfer spec does not affect
	// transfer operations that are running already. Updating the scheduling
	// of a job is not allowed.
	UpdateTransferJob(context.Context, *UpdateTransferJobRequest) (*TransferJob, error)
	// Gets a transfer job.
	GetTransferJob(context.Context, *GetTransferJobRequest) (*TransferJob, error)
	// Lists transfer jobs.
	ListTransferJobs(context.Context, *ListTransferJobsRequest) (*ListTransferJobsResponse, error)
	// Pauses a transfer operation.
	PauseTransferOperation(context.Context, *PauseTransferOperationRequest) (*google_protobuf1.Empty, error)
	// Resumes a transfer operation that is paused.
	ResumeTransferOperation(context.Context, *ResumeTransferOperationRequest) (*google_protobuf1.Empty, error)
}

func RegisterStorageTransferServiceServer(s *grpc.Server, srv StorageTransferServiceServer) {
	s.RegisterService(&_StorageTransferService_serviceDesc, srv)
}

func _StorageTransferService_GetGoogleServiceAccount_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetGoogleServiceAccountRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(StorageTransferServiceServer).GetGoogleServiceAccount(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/google.storagetransfer.v1.StorageTransferService/GetGoogleServiceAccount",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(StorageTransferServiceServer).GetGoogleServiceAccount(ctx, req.(*GetGoogleServiceAccountRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _StorageTransferService_CreateTransferJob_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CreateTransferJobRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(StorageTransferServiceServer).CreateTransferJob(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/google.storagetransfer.v1.StorageTransferService/CreateTransferJob",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(StorageTransferServiceServer).CreateTransferJob(ctx, req.(*CreateTransferJobRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _StorageTransferService_UpdateTransferJob_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(UpdateTransferJobRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(StorageTransferServiceServer).UpdateTransferJob(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/google.storagetransfer.v1.StorageTransferService/UpdateTransferJob",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(StorageTransferServiceServer).UpdateTransferJob(ctx, req.(*UpdateTransferJobRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _StorageTransferService_GetTransferJob_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetTransferJobRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(StorageTransferServiceServer).GetTransferJob(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/google.storagetransfer.v1.StorageTransferService/GetTransferJob",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(StorageTransferServiceServer).GetTransferJob(ctx, req.(*GetTransferJobRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _StorageTransferService_ListTransferJobs_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ListTransferJobsRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(StorageTransferServiceServer).ListTransferJobs(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/google.storagetransfer.v1.StorageTransferService/ListTransferJobs",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(StorageTransferServiceServer).ListTransferJobs(ctx, req.(*ListTransferJobsRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _StorageTransferService_PauseTransferOperation_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(PauseTransferOperationRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(StorageTransferServiceServer).PauseTransferOperation(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/google.storagetransfer.v1.StorageTransferService/PauseTransferOperation",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(StorageTransferServiceServer).PauseTransferOperation(ctx, req.(*PauseTransferOperationRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _StorageTransferService_ResumeTransferOperation_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ResumeTransferOperationRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(StorageTransferServiceServer).ResumeTransferOperation(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/google.storagetransfer.v1.StorageTransferService/ResumeTransferOperation",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(StorageTransferServiceServer).ResumeTransferOperation(ctx, req.(*ResumeTransferOperationRequest))
	}
	return interceptor(ctx, in, info, handler)
}

var _StorageTransferService_serviceDesc = grpc.ServiceDesc{
	ServiceName: "google.storagetransfer.v1.StorageTransferService",
	HandlerType: (*StorageTransferServiceServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "GetGoogleServiceAccount",
			Handler:    _StorageTransferService_GetGoogleServiceAccount_Handler,
		},
		{
			MethodName: "CreateTransferJob",
			Handler:    _StorageTransferService_CreateTransferJob_Handler,
		},
		{
			MethodName: "UpdateTransferJob",
			Handler:    _StorageTransferService_UpdateTransferJob_Handler,
		},
		{
			MethodName: "GetTransferJob",
			Handler:    _StorageTransferService_GetTransferJob_Handler,
		},
		{
			MethodName: "ListTransferJobs",
			Handler:    _StorageTransferService_ListTransferJobs_Handler,
		},
		{
			MethodName: "PauseTransferOperation",
			Handler:    _StorageTransferService_PauseTransferOperation_Handler,
		},
		{
			MethodName: "ResumeTransferOperation",
			Handler:    _StorageTransferService_ResumeTransferOperation_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "google/storagetransfer/v1/transfer.proto",
}

func init() { proto.RegisterFile("google/storagetransfer/v1/transfer.proto", fileDescriptor0) }

var fileDescriptor0 = []byte{
	// 786 bytes of a gzipped FileDescriptorProto
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x56, 0xdf, 0x4e, 0x13, 0x4f,
	0x14, 0xce, 0xf0, 0xef, 0x07, 0x03, 0xfc, 0x84, 0x49, 0x2c, 0x4b, 0x91, 0xda, 0x2c, 0x49, 0xc5,
	0x6a, 0x76, 0x6d, 0xeb, 0x85, 0x62, 0x8c, 0x11, 0xa2, 0x88, 0x7f, 0xb1, 0x20, 0x17, 0x86, 0xb8,
	0x99, 0xb6, 0xd3, 0xcd, 0x96, 0x76, 0x67, 0xdd, 0x99, 0x25, 0x02, 0xe1, 0xc6, 0x17, 0x30, 0xd1,
	0x98, 0x98, 0x18, 0x13, 0xaf, 0xbd, 0xf7, 0x11, 0xbc, 0xf1, 0xd6, 0x57, 0xf0, 0x21, 0xf4, 0x4a,
	0xb3, 0xb3, 0xb3, 0x65, 0xd9, 0xb6, 0x0b, 0xa8, 0x77, 0x3b, 0x33, 0xe7, 0x9c, 0xef, 0x3b, 0xe7,
	0xf0, 0x7d, 0x14, 0xce, 0x9b, 0x94, 0x9a, 0x4d, 0xa2, 0x33, 0x4e, 0x5d, 0x6c, 0x12, 0xee, 0x62,
	0x9b, 0xd5, 0x89, 0xab, 0x6f, 0x17, 0xf4, 0xf0, 0x5b, 0x73, 0x5c, 0xca, 0x29, 0x9a, 0x0e, 0x22,
	0xb5, 0x58, 0xa4, 0xb6, 0x5d, 0x48, 0x9f, 0x91, 0x45, 0xb0, 0x63, 0xe9, 0xd8, 0xb6, 0x29, 0xc7,
	0xdc, 0xa2, 0x36, 0x0b, 0x12, 0xd3, 0x33, 0xf2, 0x55, 0x9c, 0x2a, 0x5e, 0x5d, 0x27, 0x2d, 0x87,
	0xef, 0xc8, 0xc7, 0x6c, 0xfc, 0xb1, 0x6e, 0x91, 0x66, 0xcd, 0x68, 0x61, 0xb6, 0x25, 0x23, 0xb4,
	0xa3, 0x19, 0x1a, 0x7c, 0xc7, 0x21, 0x12, 0x4e, 0xbd, 0x01, 0x33, 0xcb, 0x84, 0x2f, 0x8b, 0xa4,
	0x35, 0xe2, 0x6e, 0x5b, 0x55, 0x72, 0xb3, 0x5a, 0xa5, 0x9e, 0xcd, 0xcb, 0xe4, 0xb9, 0x47, 0x18,
	0x47, 0xb3, 0x10, 0x3a, 0x2e, 0x6d, 0x90, 0x2a, 0x37, 0xac, 0x9a, 0x02, 0xb2, 0x60, 0x7e, 0xa4,
	0x3c, 0x22, 0x6f, 0x56, 0x6a, 0x2a, 0x81, 0xca, 0x92, 0x4b, 0x30, 0x27, 0xeb, 0xb2, 0xfc, 0x5d,
	0x5a, 0x09, 0x53, 0x57, 0xe0, 0x58, 0x1b, 0xb4, 0x41, 0x2b, 0x22, 0x79, 0xb4, 0x98, 0xd3, 0x7a,
	0xce, 0x46, 0x8b, 0x16, 0x19, 0xe5, 0x07, 0x07, 0xf5, 0x17, 0x80, 0xca, 0x13, 0xa7, 0xd6, 0x1d,
	0x67, 0x1a, 0x0e, 0x37, 0x68, 0xc5, 0xb0, 0x71, 0x8b, 0x48, 0x82, 0xff, 0x35, 0x68, 0xe5, 0x21,
	0x6e, 0x91, 0x18, 0xfb, 0xbe, 0x18, 0xfb, 0x0e, 0x86, 0xfd, 0x7f, 0xcc, 0x10, 0x3d, 0x83, 0x19,
	0x4f, 0x10, 0x34, 0xa2, 0x15, 0x8d, 0x83, 0x0d, 0x29, 0x03, 0xa2, 0x78, 0xb8, 0x22, 0x2d, 0x5c,
	0xa2, 0x76, 0xdb, 0x0f, 0x79, 0x80, 0xd9, 0x56, 0x39, 0xed, 0xc5, 0x5b, 0x6c, 0xbf, 0xa9, 0x8f,
	0xe1, 0xe9, 0x65, 0xc2, 0xff, 0x65, 0xf7, 0x6a, 0x0b, 0x4e, 0xdd, 0xb7, 0x58, 0xb4, 0x26, 0x0b,
	0x8b, 0xa6, 0xe0, 0x50, 0xdd, 0x6a, 0x72, 0xe2, 0xca, 0x92, 0xf2, 0x84, 0x66, 0xe0, 0x88, 0x83,
	0x4d, 0x62, 0x30, 0x6b, 0x97, 0x88, 0x86, 0x06, 0xcb, 0xc3, 0xfe, 0xc5, 0x9a, 0xb5, 0x1b, 0xc0,
	0xf9, 0x8f, 0x9c, 0x6e, 0x11, 0x5b, 0x19, 0x94, 0x70, 0xd8, 0x24, 0xeb, 0xfe, 0x85, 0xfa, 0x0a,
	0x40, 0xa5, 0x13, 0x8f, 0x39, 0xd4, 0x66, 0x04, 0xdd, 0x83, 0xe3, 0xd1, 0xb9, 0x31, 0x05, 0x64,
	0xfb, 0x4f, 0xb0, 0x8a, 0xb1, 0xc8, 0x2a, 0x18, 0xca, 0xc1, 0x53, 0x36, 0x79, 0xc1, 0x8d, 0x08,
	0x9b, 0xa0, 0xf9, 0x71, 0xff, 0x7a, 0xb5, 0xcd, 0xa8, 0x04, 0x67, 0x57, 0xb1, 0xc7, 0xda, 0x03,
	0x7f, 0xe4, 0x10, 0x57, 0xa8, 0x31, 0x1c, 0x03, 0x82, 0x03, 0x91, 0xb9, 0x8a, 0x6f, 0xf5, 0x32,
	0xcc, 0x94, 0x09, 0xf3, 0x5a, 0x27, 0xca, 0x2a, 0xfe, 0x1c, 0x86, 0xa9, 0xb5, 0xa0, 0x87, 0x30,
	0x4f, 0xea, 0x0d, 0x7d, 0x06, 0x70, 0xaa, 0x87, 0x08, 0xd1, 0xd5, 0x84, 0xfe, 0x93, 0x85, 0x9b,
	0xd6, 0x93, 0x52, 0xbb, 0xe4, 0xa9, 0xda, 0xcb, 0x6f, 0xdf, 0xdf, 0xf4, 0xcd, 0xa3, 0x9c, 0xef,
	0x16, 0x66, 0x97, 0x08, 0xa6, 0xef, 0x1d, 0xfc, 0x39, 0xed, 0xa3, 0x77, 0x00, 0x4e, 0x76, 0x68,
	0x1f, 0x95, 0x12, 0x60, 0x7b, 0x39, 0x45, 0xfa, 0x98, 0x6b, 0x56, 0x73, 0x82, 0x62, 0x56, 0x9d,
	0x88, 0x1a, 0x9a, 0xbf, 0xf2, 0x85, 0x43, 0x3a, 0x46, 0xef, 0x01, 0x9c, 0xec, 0xb0, 0x8b, 0x44,
	0x6a, 0xbd, 0xcc, 0xe5, 0xd8, 0xd4, 0xce, 0x0b, 0x6a, 0x73, 0xc5, 0x8c, 0x4f, 0x6d, 0x2f, 0x54,
	0xe4, 0xf5, 0x28, 0x49, 0x3d, 0x9f, 0xdf, 0x5f, 0x00, 0x79, 0xf4, 0x1a, 0xc0, 0xff, 0x0f, 0x6b,
	0x19, 0x5d, 0x4a, 0xde, 0xf3, 0xdf, 0x8f, 0x0c, 0x1d, 0xc1, 0x0b, 0xbd, 0x05, 0x70, 0x22, 0xae,
	0x4e, 0x54, 0x4c, 0x00, 0xe9, 0x61, 0x1d, 0xe9, 0xd2, 0x89, 0x72, 0x02, 0xf9, 0xab, 0x8a, 0x60,
	0x89, 0x50, 0xc7, 0x62, 0xd1, 0x07, 0x00, 0x53, 0xdd, 0x45, 0x8a, 0xae, 0x24, 0x20, 0x25, 0xea,
	0x3a, 0x9d, 0xea, 0x30, 0xe1, 0x5b, 0xfe, 0xbf, 0x59, 0xb5, 0x20, 0x68, 0x5c, 0x50, 0x85, 0x04,
	0xf6, 0x0e, 0x0d, 0xaa, 0x5d, 0x23, 0x58, 0xa3, 0xe3, 0xd7, 0xf7, 0x97, 0xf9, 0x11, 0xc0, 0xa9,
	0x1e, 0x7e, 0x90, 0xa8, 0xde, 0x64, 0x0f, 0xe9, 0xc9, 0xb0, 0x28, 0x18, 0x5e, 0x54, 0xcf, 0x1d,
	0xc9, 0xd0, 0x15, 0x00, 0x0b, 0x20, 0xbf, 0xf8, 0x05, 0xc0, 0xb9, 0x2a, 0x6d, 0x25, 0x90, 0x11,
	0x20, 0x8b, 0xe3, 0x21, 0x9b, 0x55, 0xff, 0xf8, 0xf4, 0x8e, 0x8c, 0x37, 0x69, 0x13, 0xdb, 0xa6,
	0x46, 0x5d, 0x53, 0x37, 0x89, 0x2d, 0x42, 0xa5, 0x3d, 0x60, 0xc7, 0x62, 0x5d, 0x7e, 0x6a, 0x5c,
	0x8b, 0x5d, 0xfd, 0x00, 0xe0, 0x53, 0xdf, 0xd9, 0xc0, 0x73, 0xb4, 0xa5, 0x26, 0xf5, 0x6a, 0x5a,
	0xcc, 0x0a, 0xb5, 0x8d, 0xc2, 0xd7, 0x30, 0x62, 0x53, 0x44, 0x6c, 0xc6, 0x22, 0x36, 0x37, 0x0a,
	0x95, 0x21, 0x81, 0x5d, 0xfa, 0x1d, 0x00, 0x00, 0xff, 0xff, 0x9e, 0x71, 0x04, 0x73, 0x87, 0x09,
	0x00, 0x00,
}


If you want to bet on baseball (MLB) games then visit BetUS to access a huge range of wager options. The site has a safe and secure payment interface that makes it very easy to transfer funds both in and out of your account. 24 hour customer care teams are available to help with any questions or queries.


Plumbing services are necessary at times when you own a home. Plumbing is a major part of daily actions. You need it to wash dishes, shower, and wash clothes. There are times when you may need a plumber quickly. Most plumbing services are always prepared to answer calls, due to the nature of plumbing damages. Water damage can quickly ruin a home. There are a few keys things to look for in a quality plumber.
When you first hire a plumber, ask about their emergency contact information. You do not want to experience water coming into your home with no way to contact you plumber. This number should be saved in your phone or displayed in an easy to see place. Affordable plumbers in Maidenhead can help you solve problems quickly. There are several times when it may be necessary to use this number.
You may want to check the credentials of a plumbing company before you decide to hire them. You can look online at their website where there is often information on the education and experience of the technicians. Online reviews can also be helpful in determining the quality of a plumbing company. Take the time to call and talk to a representative to find out more about the company, as well.
Plumbing complications can make a big mess in a home. It is pertinent to have a plumber that allows for emergency calls. When water is backing up into your home, there is not time to look for a new plumber. A company with qualified technicians usually posts their information online for you to see. Investigate a new company well before you hire them.


text:
Facing Disability Blog
New Drug Enables Spinal Cord to Repair Itself
10 Resolutions for a Happy New Year!
The Legacy of Tiny Tim
Meet Sam, The Quadriplegic Driver
Breakthrough Discovery Reverses Paralysis
"Quadriplegia" or "Tetraplegia"
Things That Don't Work When You Are Paralyzed…Besides the Obvious
Spinal Cord Injury: A Wife's Perspective
THE DOWNSIDE OF "THE UPSIDE"
Living with a Disabled Spouse
accessibility accident ADA adaptive adaptive equipment Adaptive technology Americans with Disabilities Act Ben Mattlin caregiver Cerebral Palsy challenges children Disability Disability advocacy Disability Inclusion disability rights Disabled discrimination employment family feelings independence kids Love marriage mother Occupational therapy Paralysis paralyzed Paraplegia parents post-injury progress Quadriplegia Rehabilitation sci sex Spinal Cord Injury spinal muscular atrophy sports support Tetraplegia Travel wheelchair work
When I Write About My Life…
By Ben Mattlin
Ben Mattlin, our special contributor, is a veteran writer-editor of articles on finance, market analysis, tax planning and investments for major national publications. But when it came to writing about his own disability, he faced some different challenges. (Ben, 55, was born with spinal muscular atrophy, a congenital muscle weakness that can cause paralysis, respiratory and other health issues.) Here he reveals why writing about himself was a whole different story.
I got my first book published through an old high school friend who works in publishing. At first, I hated the very idea of writing "I did this," and "I felt that," or "such-and-such happened to me." There had to be some justification, a reason why anyone should want to know how I survived spinal muscular atrophy and learned to live with it (not that I had much choice about it).
Only when it became clear to me that I had a message beyond my life story did I decide to write a memoir. I would put my tale of
growing up with a disability in a historical context—the context of the disability rights movement. So the book became my way of explaining what this movement can mean.
Actually, the title of the book says it all: MIRACLE BOY GROWS UP—How the Disability Rights Revolution Saved My Sanity. It was definitely a memoir, not an autobiography; it didn't cover every detail of my life. In fact, the book ends shortly after my wife and I had children.
But some readers wanted more. More?
What next?" queried more than one email. "I want to know all about your marriage."
But come now. It's hard to examine a marriage you're living in every day. No writerly distance is possible. It was suggested that my wife, who does not have a disability, should write the sequel, but she's a private person who has no interest in writing. She goes along with what I'm writing, but she has no desire to produce even a chapter.
My wife had no interest in writing her own book
Nevertheless, I then came up with a possible solution.
Why not write about marriages like mine, not just mine? As with the first book, I would give my story a social context. Go beyond my own experiences. In other words, use my own marriage as an entry point to other, similar marriages.
The germ for what would become IN SICKNESS AND IN HEALTH–Love, Disability, and a Quest to Understand the Perils and Pleasures of Inter-abled Romance was born.
Next came the research. For the first book, I only had to research my own memories and a smattering of highlights from the disability rights movement. But this one would require more digging.
To my surprise, a few online queries brought many responses from other "inter-abled" couples who were willing to be interviewed. There are many of us out there—so many, in fact, that I couldn't use them all. I narrowed my list down to those who had a particularly compelling story to tell
For me, the hardest part was balancing all these different love stories at once. I would finish a preliminary interview with one couple when another couple would became available. Then that couple would go on vacation for a month, and I had to track down a third couple.
Putting Compelling Love Stories Together
Finally, I had to find a way to organize these disparate stories into a cohesive book. I decided to put the individual pieces in age order, from youngest to oldest. And through it all, I weaved the tale of my own marriage.
I tend to write quickly once I have completed my research. When the manuscript was finished enough to show, my new publisher (landed partly on the strength of my first book) suggested some changes, which I made.
Next came promotion and publicity. The publicists did all the dirty work of propositioning various media entities for coverage. All I did was write op-ed essays that could be linked to the book in some way. One was about romantic stereotypes, for instance.
Just weeks before the book was officially launched, the New York Times graciously awarded me a "Modern Love" column, which I'd cobbled together from chapters of the new book. The truth is, long before I started writing the book, I had submitted an essay to Modern Love about my marriage. It was rejected. The piece that finally got published benefited, I think, from years of germinating.
What will happen from here? So far reader response has been good, but it still takes an effort to get the word out, to let people know that the book is available.
People with disabilities are often moved or even invited to write about their experiences. And if they're like me, they often find that publishers are reluctant. They will tell you, there's no market for this. The potential audience is too small, too narrow. It's too dark and depressing
Yet as we know, disability is the only minority group anyone can join. In fact, the federal government projects that more than one in four of today's 20 year olds will become disabled before age 67.
So that should be a pretty big readership, no?
Time will tell. I will let you know
Ben Mattlin
Here are the clickable links to Ben's books on Amazon: IN SICKNESS AND IN HEALTH: Love, Disability, and a Quest to Understand the Perils and Pleasures of Interabled Romance. He is also the author of Miracle Boy Grows Up.
If you do happen to pick up or download a copy (it's in hardcover, e-book format, and audio format) Ben asks that you post a review on any website that'll take it.
"I'll be checking" He says.
One response to "When I Write About My Life…"
Virginia Parra says:
Hi Ben! I read your Modern Love piece and found it lovely, it gave me a clear and honest glimpse of what an "inter-abled romance" can look like, and it's always nice to learn about the experiences of people who've been successfully coexisting together for so long, isn't it? Haven't had a chance to read your book just yet but it seems to me you've got this "writing about my life" thing quite figured out, congrats!

redpajama_set_name: RedPajamaCommonCrawl


text:
Q: Is there native touch listener in android? In java i can listen to native clicks using NativeMouseListener from the global screen,
Is there any way to listen to native touches in android?
means listen to touch from the other global activities

A: Moving this in as an answer, as it has been confirmed by @adelphus in comments:
It's my understanding that unless you KNOW the package name, and have access to it, you cannot intercept anything that goes on in it. Including where the user touches the screen.

redpajama_set_name: RedPajamaStackExchange


text:
Thank you for accessing the website (the 'Site') of Stand to End Rape Initiative ('STER', 'we' or 'us'). We are committed to protecting your privacy. To learn more, please read the privacy policy that follows (the 'Privacy Policy'), which applies to the content and applications of this Site, as well as to STER Initiative's other services and products.
What Information We Collect and How We Use It.
A. Registration and Ordering: Before ordering products through our Site, you will be prompted to provide certain personal information, including but not limited to your name, shipping and billing addresses, phone number, email address, and credit card number. In addition, you may also be asked to provide your country of residence and/or your organisation's country of operation, so we can comply with applicable laws and regulations. These kinds of personal information are used for billing purposes, to fulfil your orders, to communicate with you about your order and this Site, and for internal marketing purposes. If we encounter a problem when processing your order, we will use the personal information to contact you. When placing an order, you may create a customer profile and save your personal information for future visits, or you may check out as a guest. If, after creating a profile, you would like to have it deleted, please email us at contactus@standtoendrape.org and allow one to two weeks for the processing of your request. Like most other Web shopping sites, our servers automatically track certain information about your activity on our shopping site. This information includes the browser you are using, your IP address and our shopping pages you visited.
B. Email Addresses: Some areas of the Site allow you to enter your email address for purposes including, but not limited to: registering for the STER Initiative's newsletter. If you receive materials from us through email and would like to unsubscribe, directions for unsubscribing from these communications can be found in the body of the email you receive.
C. Cookies: Like most other websites, our shopping site uses tracking technologies such as cookies. Cookies are used to provide customers with tighter security, customised content, tracking of orders and shopping cart items that persist across browser restarts. Unfortunately, customers who turn off cookies in their browser settings may not be able to shop from this site. However, customers who have disable cookies can still place orders by contacting us at contactus@standtoendrape.org. Our cookies do not and cannot infiltrate your hard drive to gather confidential information. Our cookies are not 'spyware'.
D. Orders Placed by Phone: You may place an order over the telephone by calling +2348095967000 and you will be asked to provide certain personal information at that time. As applicable, this Privacy Policy also governs our collection and use of any personal information that you provide over the telephone.
Except as disclosed in or contemplated by this Privacy Policy, we do not sell, trade, rent, or otherwise retransmit any of your personally identifiable information that we collect online unless we have your permission. Any personally identifiable information that you provide to us will be used for your purchases and retained in hardcopy form of the original invoice as well as within our database system, which generates our invoices. Although we endeavour to protect your personally identifiable information, we cannot guarantee the security of our servers or the other means by which your information comes to us, and the information that you provide to us is provided at your own risk.
We reserve the right, if necessary, to provide certain information to our partners, designees, contractors or agents to enable them to perform certain services for us, including order fulfilment, website-related services, maintenance services, or distribution of marketing materials on our behalf. We may also share aggregated or summarised information regarding our customers with partners, advertisers or other third parties, but this data will never identify you personally.
From time to time, we may be required to provide your personally identifiable information to comply with the law, such as in response to court order, subpoena, or government investigation. We also reserve the right to report to law enforcement agencies any activities that we in good faith believe to be unlawful. We may release personally identifiable information when we believe that such release is reasonably necessary to protect the rights, property, and safety of others and ourselves. We do not knowingly collect personal information from children under 13 years of age on the Site.
Links to third-party Web sites may be provided solely for your information and convenience, or to provide additional information for various other goods and services. If you use these links, you will leave our Site. This Privacy Policy does not cover the information practices of those Web sites linked to our Site, nor do we control their content or privacy policies. We suggest that you carefully review the privacy policies of each site you visit.
Any updates or changes to the terms of this Privacy Policy will be posted here on our Site and the date of the newest version posted below. Please check back frequently, especially before you submit any personally identifiable information at our Site, to see if this Privacy Policy has changed. By using the Site, you acknowledge acceptance of this Privacy Policy in effect at the time of use.
If you have any concerns about our use of your information or about this Privacy Policy, please send an email to contactus@standtoendrape.org. We will attempt to address your concerns and any problems you bring to our attention.
This Privacy Policy was last revised on June 20, 2016.
About STER
About STER Shop
Product of © Stand to End Rape (STER) Initiative.
Designed by Akanka
STER Shop


text:
Sarah Elizabeth Smith (née Harley; 10 May 1941 – 12 September 2019) was a British-born Australian mycologist specialising in mycorrhiza. The Australian Academy of Science described her as "a world authority on the mycorrhizal symbiosis between plants and fungi". She was an adjunct and emeritus professor at the University of Adelaide, in the School of Agriculture, Food and Wine.

Early life and education
Sarah Harley, known as Sally, was born in Oxford, UK, the daughter of Lindsay (née Fitt) and Jack Harley. Both parents were botanists; her father was a fellow of the Royal Society, who was also known for his work on mycorrhiza, and her mother worked for a D.Phil. before the Second World War and collaborated with Jack Harley in cataloguing mycorrhiza.

She gained BA (1962) and PhD degrees (1965) at the University of Cambridge, UK. Her PhD was on mycorrhizal fungi of orchids, supervised by Denis Garrett. She was awarded the DSc degree by the University of Adelaide, Australia, in 1991.

Research
Smith's research was on the evolution and progress of mycorrhizal symbioses, mainly the arbuscular mycorrhizas (Gleomeromycotan fungi). Mycorrhizal symbioses are a symbiotic or mildly pathogenic connection between fungi and the roots of a vascular plant. The investigation involved both simple and strategic analysis, comprehending operations varying from the managing of the symbiosis evolution in mutant plants through features of functions of mycorrhizas in phosphate nutrition of plants and suggestions of the symbiosis for plant competition, crop efficiency and reduction of arsenic toxicity.

Publications
Smith co-authored the textbook Mycorrhizal Symbiosis, first with her father and after his death with David J. Read. It is described by the Australian Academy of Science as "the most definitive text on the subject". First published in 1983, it is now in its third edition.

Awards and honours
Smith was elected fellow of the Australian Academy of Science in 2001. She served on their council in 2005–2008. In 2000, Smith was awarded the Clarke Medal of the Royal Society of New South Wales. In 2006, she was awarded the J.K. Taylor, OBE, Gold Medal in Soil Science. She is an Honorary Professor at the Research Centre for Eco-Environmental Sciences, Chinese Academy of Sciences, Beijing, China, and an Honorary Research Professor at the China Agricultural University, Beijing. She was also the Vice Chair of the Board of Directors of the Asian Vegetable Research & Development Centre—World Vegetable Centre.

Personal life
She married Andrew Smith, also a botanist, and with him emigrated to Adelaide, Australia, in 1967. They had two daughters. She retired in 2010.

Sally Smith died on 12 September 2019.

References

Further reading
A tribute to Sally E. Smith

External links

Academic staff of the University of Adelaide
University of Adelaide alumni
Alumni of the University of Cambridge
Australian mycologists
20th-century Australian botanists
Fellows of the Australian Academy of Science
1941 births
2019 deaths
21st-century Australian botanists

redpajama_set_name: RedPajamaWikipedia


SAN JOSE, Calif.--(BUSINESS WIRE)--PayPal today released the results of its Digital Goods Economy Survey, which looks at the attitudes, habits and behaviors of the digital media consumer across the digital gaming (including gaming video content) and eBook industries. The 10-market, 10,000 consumer research study was commissioned with SuperData Research in France, Germany, Italy, Japan, Poland, Russia, Spain, United Arab Emirates, UK and the U.S.
The survey results focused on purchase intent in key verticals; consumption and spending patterns; role of piracy in the digital goods economy; and the demographic nuances of age, gender and region. This research builds on PayPal's cross-border trade consumer insights program and reveals new data on the consumption and purchases of digital goods or intangible items.
U.S. respondents use smartphones (78 percent) when asked which devices they used play digital games, versus a tablet (59 percent) or laptop (47 percent). This trend is worth noting for merchants as according to SuperData Research, the 2016E mobile games market will be worth $37.6 billion, accounting for just under half (49%) of the total 2016E $77.3 billion worldwide games market.
An overwhelming majority of U.S. respondents cited "ease of use" for why they preferred their most-used payment method across eBooks (80 percent) and mobile gaming (82 percent). Processing payments quickly was also noted as a strong consideration for eBook and online gaming purchases. PayPal was cited as the payment method used the most in the last three months by U.S. respondents to purchase digital video game downloads or in-game content for their PC/Mac or laptop.
Sixty percent of U.S. respondents read eBooks on their tablets, and 66 percent cited they purchase eBooks because they are cheaper than buying a hard copy and they can read it right away. With 42 percent citing that they buy/download an eBook immediately after becoming interested in it for the first time, there is a captive audience of impulse eBook buyers that merchants can cater to with a simple and secure checkout process so their customers can instantly dive into the book.
Forty percent of respondents play their console video games one to two hours for each session, with 34 percent playing for two to four hours. This was greater than the time cited spent on PC/Mac or laptop games, mobile video games and eBooks. The 30 minute to one-hour range was the highest for both eBooks (38 percent) and mobile games (31 percent).
Console gaming session length highlights an opportunity for relevant in-game ads/branded content as the audience is making a longer time commitment per session and thus third-party content is less disruptive. Additionally, for mobile games and eBooks, creating shorter marketing content to fill the desired time window will resonate with consumers looking to spend less time consuming content.
Want to deter piracy? Focus on how it affects the creators.
When asked how they view piracy, respondents pointed to not wanting to hurt the artists (game developers and authors) as a key consideration. For eBooks, 33 percent stated that piracy hurts authors and publishers, compared to only 11 percent who stated that piracy was acceptable if an eBook is too expensive. An even starker contrast was seen in console games, where 31 percent stated that piracy hurts game developers and only seven percent stated that piracy was acceptable if a video game is too expensive. For digital goods merchants, messaging on how piracy hurts the individual creating the content versus the company selling it can be a strong deterrent to preventing piracy.
To view full U.S. results from the survey research, please click here.
In 2015, 28% of the 4.9 billion payments we processed were made on a mobile device. With our 192 million active customer accounts, PayPal is a truly global payments platform that is available to people in more than 202 countries, allowing customers to get paid in more than 100 currencies, withdraw funds to their bank accounts in 56 currencies and hold balances in their PayPal accounts in 25 currencies.
Founded by veteran games industry researchers, SuperData is the leading provider of market intelligence and insights covering games, VR, AR, eSports, and playable media. Using digital point-of-sale data received from publishers, developers and payment service providers, SuperData's analyses are based on the spending of 78 million paying online gamers worldwide, in combination with qualitative consumer insight. SuperData helps its customers understand what people play, connect to and spend on.
New research from PayPal and SuperData showcases spending and consumption trends across digital gaming and eBook industries.


text:
Privacy Not Included
*privacy not included
About the Guide Donate
Video Call Apps
All Best Of Smart Home Toys & Games Entertainment Wearables Health & Exercise Pets Video Call Apps Dating Apps
Warning: *privacy not included with this product
Valentine's Day Dating Apps
Bumble, Inc
Review date: Feb. 12, 2021
Mozilla researched 6 hours
Mozilla says
People voted: Super creepy
Every dating app has a thing. Bumble's thing is only women can make the first move in the app to contact a man (for users looking for someone of the same gender, anyone can make the first move). Bumble says their goal is to shake up the gender norms and empower women to make the first move. Which can be a breath of fresh air in the straight dating app world where women are constantly bombarded with "Hey" as an opening line (come on guys, do better!). Founded by a former Tinder employee and launched in 2014, Bumble now has over 100 million users worldwide. This dating app lets users sign up with Facebook or their phone number (they added the phone number options back in 2018 following Facebook's Cambridge Analytica scandal). All profile information on Bumble is public, so if you sign up with Facebook be aware it could pull your personal info from there and make it open to all users.
What could happen if something goes wrong?
Bumble says they want to provide a safe dating space, especially for women. They even use artificial intelligence to try and moderate lewd images, body shaming, transphobic, homophobic, and racist comments shared on the site. Good for them! Unfortunately, they have some work to do to protect the privacy and security of all the users on their app. In November 2020, researchers found a security bug in Bumble that exposed the personal information of their nearly 100 millions users. All that really personal info, like political leanings, weight, the type of person a user was looking for, and even location were open to any attacker with a little technical know how. We'll say it again, no matter what a company's privacy policy says, any personal information you share with them online is potentially vulnerable and could be used by bad people for bad purposes. We are glad to see that in 2018, Bumble did stop requiring users to sign in through Facebook. Now users also have the option to sign in with their phone number. Which is good because according to Bumble's privacy policy, if you log into the app using your Facebook account you authorize them to access pretty much everything on Facebook -- friends list, current location, photos, friends you have in common with other people on Bumble, the list goes on. So please remember, when you connect a social media account like Facebook to Bumble, both Facebook and Bumble now potentially collect more information together. That's why we recommend users don't link your dating app to Facebook, use your phone number instead. Because really, you don't need to share all your personal info with Facebook, and then Bumble, and then Bumble may share more with Facebook and then it all gets exposed and soon the world knows where you live, who you think is hot, and how much money you make. That might be a recipe for a good date...it's also potentially a recipe for disaster.
mobile Privacy Security A.I.
Can it snoop on me?
Device: N/A
App: Yes
Tracks location
What can be used to sign up?
Third-party account
What data does the company collect?
"First name (required), photo (min one), date of birth (required), gender (required), type of connection (required: date, bff, bizz), profile prompt (optional), description (optional), occupation (optional), education (optional), covid dating (optional), city (optional), hometown (optional), exercise (optional), star sign (optional), drinking (optional), smoking (optional), pets (optional), looking for (optional), kids (optional), religion (optional), politics (optional), content of messages (required). Does not collect data on ethnicity.
Height (optional)
Yes, Bumble collects social media data: login information and friend lists for social media accounts that are connected to a user's Bumble Account
How does the company use this data?
Bumble's Privacy Policy, last updated in August 2020, claims that Bumble does not sell user data and has not done so in the previous 12 months. However, it is unclear whether the company has sold data prior to Aug 2019 or since Aug 2020. Bumble shares users' personal information such as demographic data and geolocation with third parties for targeted advertising. Bumble also shares non-personal, aggregated data with third-parties for purposes such as research and analysis.
Users can request a copy of their personal data on Bumble, as well as request for their data to be deleted by emailing [email protected]
What is the company's known track record of protecting users' data?
Needs Improvement
Bumble's systems had serious security flaws that left personal information of users exposed in Novemeber 2020.
Can this product be used offline?
User-friendly privacy information?
The privacy policy language is relatively user-friendly. However, their privacy policy isn't totally clear on how they are sharing your data.
Links to privacy information
Does this product meet our Minimum Security Standards?
Can't Determine
We couldn't find anywhere that shows Bumble explicitly uses encryption to protect all users' personal and communications. They did not respond to our requests for more information so we are unable to tell if they use encryption or not.
Strong password
Password isn't requires as login happens either via phone or third-party
Manages vulnerabilities
Bounty Program. https://bumble.com/contact-us
Does the product use AI?
Bumble uses AI for moderation purposes, including detecting inappropriate images as well as body shaming language, including fat-phobic, ableist, racist, colorist, homophobic or transphobic remarks. Bumble uses automated decisions and moderators to block accounts as part of its moderation procedures.
Is this AI untrustworthy?
What kind of decisions does the AI make about you or for you?
Is the company transparent about how the AI works?
Does the user have control over the AI features?
How to protect yourself from dating app data breaches
Dating apps are now as much a part of modern courtship as going to the movies or buying flowers. But dating apps, like Tinder, Grindr, or Bumble, present significant privacy risks. This Valentine's Day, take some time to secure your data to avoid falling victim to a Tinder scammer.
Dating Site Bumble Leaves Swipes Unsecured for 100M Users
Threat Post
Bumble fumble: An API bug exposed personal information of users like political leanings, astrological signs, education, and even height and weight, and their distance away in miles.
Bumble Vulnerabilities Put Facebook Likes, Locations And Pictures Of 95 Million Daters At Risk
Bumble prides itself on being one of the more ethically-minded dating apps. But is it doing enough to protect the private data of its 95 million users? In some ways, not so much, according to research shown to Forbes ahead of its public release.
Bumble's algorithm will now report you for body-shaming
The Next Web
Bumble has stepped up its efforts to provide a safe dating space for users by banning body-shaming on the app. The app will use an algorithm to flag derogatory comments about someone's appearance.
Bumble bugs could have exposed personal data of all users
Security vulnerabilities in Bumble, one of today's most popular dating apps, could have exposed the personal information of its entire, almost 100 million-strong, user-base.
Bumble will allow users to log in without Facebook
In response to recent concerns about Facebook's handling of user data, Bumble has announced it will drop its Facebook login requirement for users. The dating app will allow users to log in and register for an account using a phone number beginning tomorrow, according to a new report from Wired.
Personals WWW, Inc
Got a comment? Let us hear it.
We all love the Web. Join Mozilla in defending it.
Let's protect the world's largest resource for future generations.
This website supports Web Monetization.
Read more about our implementation
Language Deutsch English Español Français Frysk Kiswahili Nederlands Polski Português
Mozilla is a global non-profit dedicated to putting you in control of your online experience and shaping the future of the web for the public good. Visit us at foundation.mozilla.org. Most content available under a Creative Commons license.


Normally I'm not a fan of volunteer tourism. I don't think it does much good beyond making the volunteer feel like a charitable person. But when I was planning my trip to Dhaka, I knew that it was going to be really hard to have an enriching or positive interaction with Bangladesh if I didn't find some sort of something to plug in with. I was hoping that I could find a volunteering opportunity that would provide me with a place to stay in exchange for my work. However, after long hours on the Internet, it became clear that the only way to volunteer in Dhaka was to pay to work. Paying TO work—this was a notion that I sort of resented. I think that I actually have a lot to offer, so I didn't just want to be humored.
In the end, the best thing I found was an organization called JAAGO. I would have to pay for my time with them, but they were pretty transparent in breaking down the cost structure of where my money would go, so I felt a bit better about it. The money I would pay them would cover rent on their guesthouse, the meals that they would provide me with, as well as a car to pick me up and drop me off at the airport. So I sent them an email. I was promptly quoted a different price from the one listed on the website. I responded, attempting to clarify the price, and was given a third price, different from the first two prices. Eventually I was able to nail it down, but I was sufficiently sketched out that I only wanted to commit to staying with them for the bare minimum amount of time: 1 week. I figured that if I ended up liking it, then I would ask to extend. These things are usually pretty flexible.
JAAGO is an organization working to provide a free, quality education to the children in Bangladesh who are most in need. The goal is to change the future for these children, as well as for Bangladesh. It was founded in 2007 when a guy named Korvi Rakshand and some of his buddies rented a small room in one of Dhaka's slums. Since then, Korvi's one-room schoolhouse operation has grown to include 3 full-sized schools in Dhaka and Chittagong (the 2nd biggest city in Bangladesh), as well as 10 other remote campuses located all around Bangladesh. These remote campuses are making it possible for children in the more remote, rural areas of Bangladesh to receive the same standard of education as those in the capital city, something that had been impossible in the past. All of these schools employ a unique curriculum, which meets the International Standard, and has been specially tailored to the needs of its students. However, JAAGO's students literally come from the slums, so there is some extra help needed to catch them up with the rest of society. JAAGO provides the parents of their students with job training, and provides the whole family with workshops on personal health and hygiene so that the kids can be healthy and functional for school. Currently, JAAGO is in the process of opening up 5 new remote schools all around the country. That will bring the total tally of JAAGO schools to 18.
I was initially assigned to the 'Project Development Team', and I was excited because I was going to get to help write a grant proposal that was to be submitted to the UN. However, when I came into the office, I said something like "also, if you have any other needs right now, I can do more than just this for you guys" and listed off some of my experience. They had no box for that apparently, so after having what seemed to be a minor freak out, they reassigned me to the PR team.
Even though the office was very busy, it didn't seem like there was much work for me in the beginning. I spent a couple days feeling useless before I really started to get plugged in. When I finally did, I functioned primarily as a photographer / content writer. While on the PR team, I did 3 main things for JAAGO.
You'll notice that not all of these pictures are actually in a school. Many of these are kids that I found running around with bare feet and no shirt outside of the school. When I first interacted with them, I just thought they were kids from the area, but after I came back to the school a few times, I started to notice that many of them were actually in the classes I was sitting in on. Likewise, many of the children I met in the school initially, I later saw out on the street. It always caught me a little off guard because the difference between them in their school uniforms vs. barefoot in the slums was like night and day. These kids clean up good! More to the point though, the kids in these photos really are in need. They live under tin roofs in the surrounding slums, many of them with rocky family situations, so the education they are getting here is pretty much the only thing they have going for them.
So why was I taking these pictures? PR is a pretty big deal for JAAGO, and they need things to put out there. I took these photos and made them into content to be shared across all their social media platforms. Writing the content to go with the pictures was a bit, um, different, because in order to appeal to the Bangladeshi market, it had to be as cheesy as possible. Up until that point, I had spent most of my life trying desperately NOT to be cheesy, so I had to throw it in reverse for a couple weeks. I wrote captions that had phrases like "pure joy" in them.
Q: What has been your proudest moment as a teacher so far?
A: A few weeks ago I was reading a story aloud. It was called How Zebras Got Their Stripes. So I read this story over 3 days in class, using visual aids for the new words so that they (the students) could understand. In the story there was the word "appreciate". In the story, the donkeys turn into zebras (it's a folk tale). The donkeys worked hard all day long and nobody appreciated them, so they went to a wise man for help. The wise man colored them, so that nobody could see that they were donkeys. So then they were Zebras. They weren't working. They were having a good time, grazing in the grass. So I asked them "What is appreciation?" I helped them understand with visuals and real life examples. Like, if your mother does hard work at home, do you ever say "Thank you Mom for what you're doing"? Then they thought "Yes, we don't say that. Actually Mom does a lot for us, but we don't say anything. We don't say thank you." So we learned about appreciation and that we should appreciate others for their work. This was before the break time. So when I entered the class after the break time I was amazed that suddenly they were silent, and all stood up. I asked them what happened, and in one voice they said "Thank you sir for your hard work." I was very happy at that moment. I didn't express it, but I was really excited. When I asked them how they did this, I found out that some of the students, behind the scenes during break time, had called to the other students and had a meeting. They planned the whole thing. I would come in, and they would stand up to say "Thank you sir for your hard work". So they made a plan together. They know how to work together. In the next class, in the next level, until they are adults, they will know that if they work together, they can make a big change. That is a proud moment for me.
A: I have 2 stories I want to share. First, when I finish my class everyday, my students cheer. I say "class dismissed" and they cheer. This is a normal thing in my class. One day, I said that 3 times, and most of the students did not cheer. I was surprised, like, "Why are you not cheering? We have to go, our class is finished". Then some students said to me "Miss, we are not happy to go home. We like to stay in class with you!" This was the most valuable moment for me. Second, sometimes I arrange some open discussions with my students and one day we were talking about safety. I asked them if they think that our classroom environment is safe for learning. There were many answers, but one answer stood out. The student said "yes, this classroom has a safe learning environment," so I said "why?" Then he said "We all have the freedom to ask you any question, and we can give our opinions to you by raising our hands. That is why this class is a safe learning environment". I didn't expect this boy to explain it like this. (Laughs) It was really cool.
You couldn't ask for a more friendly and welcoming group of people. They are all awesome. Also, most of the people in the office are pretty liberal by Bangladeshi standards, which gives the office a very laid back feel. People will invite you out to dinner and show you what they can of Dhaka, which is nice because you'll have a hard time of exploring on your own. If there are any business trips happening out to other parts of Bangladesh then you will be able to join, which would otherwise be really hard trips to do by yourself.
The 'guest house' they talk about in their volunteer page is actually a high-rise apartment. I think this apartment is a relatively recent development, but it's a very comfortable place. You'll be roommates with Korvi (the CEO) and potentially another volunteer, since there are 2 spare bedrooms. The air conditioning is powerful but there is also a good ceiling fan in the room so you'll have a lot of control over the climate of your sleeping space. There's a nice TV, couches, and a refrigerator that is always filled with 2-liters of Coke (since Korvi loves Coke). The office is across the hall from the apartment, and you can get food delivered, so you never need to actually go outside if you don't want to. You should go outside though.
Also, most importantly, JAAGO is doing really good work. For whatever it's worth, I'll definitely vouch for that. First of all, after a year of being a teacher, education is a cause that I have really come to believe in. If you really want to invest in the future for a place like Bangladesh, it's all about educating the kids. It's the only way for things to really improve in the long term. Second of all, JAAGO is 100% Bangladeshi. Getting help from the UN and other international organizations is good, but what you really want is for a country to help itself... I think. Korvi, and JAAGO are doing that, and they are doing it as well or better than all those international organizations. So it's a great thing to be able to learn from and contribute to.
I showed up during a busy time for JAAGO, so there was a lot to do, and people were stressed. You'd think that that would translate to me being assigned lots of work, but sometimes I felt like people were just trying to invent things for me to do. I found myself feeling useless bordering on annoying in the beginning, but eventually I began to take on actual responsibilities. Also, the food is exactly the same everyday. To be fair, it's good food, and 100% safe to eat (hard to find a guarantee like that in Dhaka) but it starts to wear thin after a while.
JAAGO has a dog. It's small, white, and fluffy and its name is Hyper. It pretty much just roams the office during business hours, so I think everybody feels pretty close to it, in both good and bad ways. I'm fairly certain that at least half the office doesn't like the dog, because it barks all the time. Especially if somebody nearby is afraid of dogs. It's kind of a little bully. When it won't stop barking people have to stop work to chase it down and throw it out. There are a lot of people that come in and out of the apartment during business hours, and when they need to get rid of Hyper, they'll throw him through the first available door. I was just across the hall most of the time, so I didn't often lock my bedroom door. Thus, Hyper would get thrown into my room sometimes. I don't know which time it was… but my passport looks like a goddamn chew toy now.
I guess this thing about the dog is a pretty minor complaint in the grand scheme of things. I'm still salty though.
Yeah, Owl City. Deal with it.


text:
Home » Canada » What is IRPA? What is IRPR?
What is IRPA? What is IRPR?
IRPA stands for the Immigration and Refugee Protection Act. It refers to an Act of the Canadian Parliament that builds the foundation for the immigration policies, processes, and procedures. It also defines matters such as immigration offences, temporary resident to Canada, permanent residency, refugee claims, inadmissibility to Canada and more. In our website, we may refer to the provisions of IRPA by the letter A. For example, A24 means section 24 of IRPA.
IRPR stands for the Immigration and Refugee Protection Regulations. Under IRPA the Minister of IRCC has the authority to develop certain rules to expand on IRPA. Such rules further offer details about the immigration process in Canada. For example, the location you may apply for a Work Permit, or who may study in Canada without a study permit, and so on. In our website, we may refer to the provisions of IRPR by the letter R. For example, R24 means section 24 of IRPR.
If you wish to visit or move to Canada or if you have encountered any issues with the immigration authorities, you may fill out our free assessment form or book a consultation session to assess your potential opportunities or offer you immigration, visa, or citizenship advice.
Al Parsai, MA, DTM, RCIC
Ashton College Instructor – Immigration Consulting
Sign Up to Our Newsletter Now!
"This article provides information of a general nature only. It may no longer be current. It does not provide legal advice nor should it be relied upon. If you have specific legal questions you should consult a lawyer. If you are looking for official immigration advice contact us."
Al Parsai
Al Parsai is a Regulated Canadian Immigration Consultant (class L3 RCIC-IRB – Unrestricted Practice) in Toronto, Canada. He is an adjunct professor at Queen's University Law School and Ashton College. Al, who holds a Master of Laws (LLM) degree from York University, is a member of CICC and CAPIC organizations. Al, the CEO of Parsai Immigration Services, has represented thousands of applicants from more than 50 countries to the immigration authorities since January 2011.


Carefully remove the skin from the ham, ensuring to leave all of the fat behind to maximise flavour. Using a sharp knife, score the fat in a criss-cross pattern.
To make the sauce, place the remaining ingredients in a pot and bring to a simmer. Cook for further 10 minutes on low, stirring occasionally so it doesn't burn. Using a pastry brush, paint a third of the sauce over the ham.
Place the ham in a deep baking tray and cook in the oven for 1 hour.
While the ham is cooking, return the rest of the sauce to a simmer and cook for a further 10 minutes. Remove from the heat and using a fork, take out the star anise, cloves, orange peel and cinnamon stick. Allow the sauce to cool and thicken to a jam-like consistency.
Once the ham is cooked, rest covered with foil for 10 minutes. To serve, slice thick pieces and drizzle over the cranberry sauce.


text:
Action Campaigns, Blog, Children, World Humanitarian Day
An Evening Celebrating the World's Humanitarians
On Friday night I attended the "I Was Here" event at the United Nations headquarters in New York in celebration of World Humanitarian Day that is celebrated every year on August 19. In attendance was Beyonce who filmed the video for her song I Was Here in the UN General Assembly Hall. She donated her video to the United Nations Office for the Coordination of Human Affairs to spread the word about World Humanitarian Day in order to reach 1 billion people with the message to help one another on August 19 and beyond.
World Humanitarian Day first began in 2007 to honor the 22 people who were killed during an attack at the United Nations headquarters in Baghdad, Iraq in 2003. Today World Humanitarian Day celebrates the people who help those in need around the world and those who risk their lives every day for the safety and security of people in need.
The evening was capped off by Beyonce's moving performance, but the night started with remarks by Valerie Amos, the Under-Secretary-General for Humanitarian Affairs and Emergency Relief Coordinator and poignant interviews by Anderson Cooper with people who do amazing things to help others every day. First, Anderson interviewed Laurent Vieira de Mello who helped start the Sergio Vieira de Mello Foundation. Sergio is Laurent's father and a humanitarian who was killed in the worst attack against the United Nations in 2003. The Sergio Vieira de Mello Foundation works to advance the humanitarian notion of conflicts and resolutions through peaceful means.
Anderson also interviewed Pernille Ironside, a Child Protection Specialist in Emergencies for UNICEF, who has negotiated the release of children from Ugandan warlords and the Nepalese government. The work she does will make your jaw drop, but she continues to work in dangerous situations to save the lives of children around the world. Please take a moment to read an article about Ironside from a few years ago in the CS Monitor. It sums up her amazing work nicely.
Anderson also interviewed Ishmael Beah, a former child soldier in Sierra Leone who was saved by a team from UNICEF in the 1990's. He wrote A Long Way Gone, his memoir about being a child soldier. He recounted how his immediate family was killed and how he sought refuge at a military base. After a week at the base he had been taught to be a child soldier. He was only 12-years-old.
Beah wrote his book to tell his story and the stories of millions of children just like him. His story shows that even though children are taught to commit horrible atrocities that they can come back from living as a child of war.
Cooper Anderson interviewed Erin Dinan, a New York City-based photographer who started One Sandwich at a Time, a nonprofit that comes together twice a month to feed New York's homeless. What started as a simple idea to help others has turned into an organization with massive reach that just recently fed 600 people in New York. Learn more about her work at www.onesandwichatatime.com.
On August 19 join me and millions of others who will celebrate World Humanitarian Day and commit to do something – no matter how small – to help someone else. Visit whdiwashere.org to join the movement.
How to Get Involved in World Humanitarian Day – August 19 (mombloggersforsocialgood.com)
Beyonce Performs At U.N. For World Humanitarian Day (mtv.com)
Beyonce Donates 'I Was Here' to Support World Humanitarian Day (celebuzz.com)
Photo: https://www.facebook.com/UNOCHA
August 12, 2012 August 19, 2019 Anderson Cooper, August 19, New York, United Nations, World Humanitarian Day
One thought on "An Evening Celebrating the World's Humanitarians"
Semper Sue says:
Reblogged this on Semper Sue and commented:
One of my favorite blogs to follow
Previous Previous post: How to Get Involved in World Humanitarian Day – August 19
Next Next post: Thank You for Being a Member of Our Facebook Family


New column over at Tor.com.
I am a bit slow about doing stuff lately.
But at least there are pictures.
Books by Robert Jackson Bennett, Ann Leckie, and Sarah Rees Brennan.
That's Robert Jackson Bennett's CITY OF STAIRS, Ann Leckie's ANCILLARY SWORD (EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE) and Sarah Rees Brennan's UNMADE.
Aliette de Bodard's short story at Subterranean Press, "The Days of War, as Red as Blood, as Dark as Bile," is marvellously bitter and affecting.
While at Clarkesworld, Seth Dickinson's "Morrigan in the Sunglare" makes an interesting counterpoint. Both are stories about war and loss, but they approach their subjects from widely divergent angles.
They're both pretty good, by the way. Just in case you were wondering.
Depression is hard to understand, because it is not a consistent state. Depression is rather like a virus, but like a virus, it has its manageable days and its acute, life-threatening flare-ups. You can be in a depression and still laugh at a friend's joke or have a good night at dinner or manage low-level functioning. You grocery shop and stop to pet a puppy on the corner, talk to friends in a café, maybe write something you don't hate. When this happens, you might examine your day for clues like reading tea leaves in a cup: Was it the egg for breakfast that made the difference? The three-mile run? You think, well, maybe this thing has moved on now. And you make no sudden moves for fear of attracting its abusive attention again.
Other times, it's as if a hole is opening inside you, wider and wider, pressing against your lungs, pushing your internal organs into unnatural places, and you cannot draw a true breath. You are breaking inside, slowly, and everything that keeps you tethered to your life, all of your normal responses, is being sucked through the hole like an airlock emptying into space. These are the times Holly Golightly called the Mean Reds.
I call it White Knuckling it.
When it's White Knuckle Time, you will have to remind yourself to stand in the middle of the subway platform, well away from the edge.
Yep. That's a thing. That's a thing that's happened to me.
Mary Beard talks about women's voices.
Sarah Rees Brennan writes trenchant critique of the ways women are judged for writing fanfiction.
And here is a discussion on the popularity, or lack thereof, of lesbian romance.


Danny Drinkwater is waiting at Chelsea's training ground to complete his move from Leicester City, but a deal is still to be agreed.
Drinkwater is close to joining Chelsea after handing in a transfer request on Monday when City rejected a £23million offer from Chelsea.
But the Premier League champions are still to match City's valuation for the England international.
City are trying to bring in Adrien Silva from Sporting Lisbon in a £15m deal but want more than £30m for Drinkwater, and Chelsea seem reluctant to meet that valuation.
If a breakthrough is not made in the next hour, the deal will fall through.
Meanwhile, City appear to be very close to finalising a loan deal to bring Aleksandar Dragovic from Bayer Leverkusen with a view to a permanent deal.


It is a comprehensive guidebook that condenses the attraction of sightseeing in Himeji.The pamphlet contains tourist information and tourism facilities including Himeji Castle.
Yumeyakata offers a unique kimono experience with a full makeover: a photoshoot in the best locations of the former capital, Kyoto.
Variety of attractive experiences, sutra writing and Zen meditation at a historical temple, Ninja practice in front of a world heritage, or sword-making in sweet country air are expecting you.
Kobe is one of Japan's most famous regions with a wealth of attractions. Kobe's glittering harbor, mountains and night views impress even the most seasoned traveler.
Introducing the Halal Kobe Beef Steak course meal.
This course meal is served only at Kobe main store.
Reservation and advanced payment is strictly required.
This guide book introduces sightseeing spots of Wakayama City with big pictures.
for our HALAL KOBE BEEF.
You would be able to enjoy your precious dinner with us.
[JNTO] PG-508 Shirahama, Koyasan, Kumano & Wakayama Pref.
Introduction to areas known for their cherry blossoms in Kyoto, Osaka, and Shiga.
It is a pamphlet that posted noteworthy festures of Himeji Castle was registered as UNESCO World Heritage Site, in 1993.It symbolizes Japan's culture of wood craftsmanship and artistry.
Experts involved in the tourism industry have polished the charms of "Setouchi", and new travel products have been produced.
The Sightseeing Map of the Nara city.
Hotel Universal Port. Your wonderful adventure has begun.
"Hotel Universal Port", an urban-type resort hotel is located very close to UNIVERSAL STUDIOS JAPAN ™. Enjoy an amazing journey with your family, friends and loved ones.
This brochure introduces facilities of the Manyo Club, which is located throughout the country.
Along the railways connecting Kanto, Hokuriku and Kansai areas, there are a lot of sightseeing spots where you can enjoy nature, history, culture, food, and hospitality.
Introducing Tokyo's best shows, theme parks and nightlife entertainment, all in this 16 page brochure!


HTF Market Intelligence released a new research report of 121 pages on title 'Global Computer On Module (COM) Market by Manufacturers, Countries, Type and Application, Forecast to 2022' with detailed analysis, forecast and strategies.
The Computer on Module (CoM), which is sometimes referred to as a System on Module, is an alternative to single board computers for embedded systems offering a more flexible and contoured solution. It is designed to plug into a carrier, or base board, and is generally a small processor module with a CPU and standard I/O capability. The complex effort associated with designing a CPU subsystem is avoided by using CoM functionality and a custom base board.
A Computer on Module (COM) offers a unique approach to product development and the often fully custom electronics typically contained within sophisticated devices. A CoM helps system designers realize a fully customized electronics assembly, complete with custom interfaces and form factor without the effort of a ground-up electronics design.
This report focuses on the Computer on Module (COM) in Global market, especially in North America, Europe and Asia-Pacific, South America, Middle East and Africa. This report categorizes the market based on manufacturers, regions, type and application.
There are 15 Chapters to deeply display the global Computer on Module (COM) market.


Wailea is a beacon for notable chefs and award-winning cuisine.
Three of the original Hawaii Regional Cuisine chefs feature four restaurants including Bev Gannon's "Joe's" and "Gannon's," Mark Ellman's "Mala" and Peter Merrimen's "Monkeypod Kitchen." Local chefs born and bred on Maui offer their own homegrown spin from hottest new chef Isaac Bancanco's "Ka'ana Kitchen," Top Chef Seattle Runner-up Sheldon Simeon's "Migrant" and Tylun Pang's "Ko Restaurant." Add the styling of famed chef's Wolfgang Puck's "Spago" and Iron Chef's "Morimoto's." Arrangements can also be made for a private chef to prepare an unforgettable dining experience in the privacy of your villa.
Beautifully finished gourmet kitchens with custom cabinetry, granite counters and marble tiles are equipped with two Sub-Zero refrigerators or one Sub-Zero refrigerator and one wine refrigerator, gas or electric range, dishwasher, microwave, blender, rice cooker/steamer, fully embellished coffee bar with grinder and completely stocked housewares and essentials.
A private Chef can be arranged for special occasions or to prepare all your meals - after all, you're on vacation! You can even turn this into a private cooking class and learn from a pro!
Upon check-in, you're presented with $85 in dining certificates to nearby Wailea restaurants including Ruth's Chris Steak House and Tommy Bahama in the Shops at Wailea, Duo at the Four Seasons and Ko at the Fairmont Kea Lani. Or let us make reservations at a number of celebrity-Chef restaurants in Wailea.


Best deal for Car rental in Ho Chi Minh City. Enjoy this service with VN Car Rental & Tours Co., for best offer now.
Best deals for Car rental & tours service in Nha Trang. Enjoy this service with VN Car Rental & Tours Co., for best offer now.
This is Hyundai Aero Space bus. It is specialized in transporting a big group of 45 pax.


The word 'productivity' gets thrown around quite a bit by policymakers and economists, but is it really that important to our everyday lives? The media certainly seems to believe so. A simple search on productivity and we are hit with the latest updates on productivity trends and theories for such trends. Why though?
Simply put, productivity growth can be generalised to represent the growth in our standards of living. Higher productivity means that things can be produced at a cheaper rate. If these savings are then passed on to consumers - which would naturally occur with high levels of competition – then consumers' effective income increases. This is then spent elsewhere, resulting in gains for the entire economy (Statistics Canada, 2011).
William Nordhaus for example, found that in the 1800s a day's wages could purchase 5 hours of light, compared to the average person's wages today earning enough to pay for around 20,000 hours of light. This productivity growth puts the numbers on why today we can live better lives than kings of old, it is therefore worth striving to understand what productivity really is.
Fundamentally, productivity is a measure of efficiency. At the national level, it indicates how efficiently inputs – such as labour or raw materials – are being utilised to produce outputs – what we consume. This is different from raw output growth as productivity accounts for large increases in inputs that may drive growth in output.
Think of it like this: we decide to make pancakes. On one day we make twelve pancakes, on the following day we make twenty-four. This would represent a doubling in output but if we were merely working twice as long with twice as many ingredients, no productivity growth occurs. Just because we now have more pancakes doesn't necessarily mean we are better off, especially if we don't even have time to eat them!
Productivity growth, boiled down to its core components, is essentially growth in outputs minus the growth in inputs plus the growth in efficiency of those inputs. Economists simplify inputs down to labour (people) and capital (stuff).
Using the example of pancakes again, one could change the amount of ingredients they are using – as explored above – or the amount of labour they put in, creating input growth. On the other hand, one could also attempt to make the process more efficient – make more pancakes with same amount of inputs. This gain in efficiency could be because you have made pancakes so many times in your life that you have come up with your own practiced method or it could be because you bought an electric whisker instead of mixing the ingredients by hand.
These residual factors economists lump into a third term coined total factor productivity. These efficiency gains capture factors outside of your control that influence productivity, which could be as simple as living in an area which has rule of law or certain technological developments. It could also be that you are benefiting from economies of scale - this is where it is faster for you to make pancakes for the whole family instead of everyone taking turns to make their own.
There is a difference between changes in the inputs versus changes in the underlying efficiency. In certain instances, shedding labour (and also the total number of hours worked), can create surges in measured productivity. Arguably, however, these increases can be seen as mostly superficial, particularly if the gains are temporary. We shall therefore not only look at trends in productivity but also what is driving those trends.
Productivity, by definition, is a key driver of GDP growth and vice versa. The relationship of the two, however, is not straightforward. On the time scale of decades, a clear correlation between the dips in output growth and productivity growth is evident. However, merely moving the timeframe into a half-decade perspective, this correlation begins to break down as the troughs in GDP no longer line up with lowest points in productivity growth (Steindel & Stiroh, 2001). This phenomenon is illustrated by Figures 1 & 2, where zooming in Figure 2 highlights the time disconnect. Despite this, the intuitive link between output growth and productivity is a key starting point for understanding why productivity matters.
Figure 1: Thomas & Dimsdale, (2017).
Figure 2: Thomas & Dimsdale, (2017).
The relationship between income and productivity on the other hand is often simplified by economists, and assumed to be equal (Steindel & Stiroh, 2001). This simplification, however, is founded on a few strong assumptions. Generally, when looking at the data, the two tend to follow each other in the long term. However, short-term correlations are generally fairly weak, due to the inflexibility of wages and the pervasiveness of unemployment. This is illustrated in Figure 3, where nominal wage follows productivity growth fairly closely until the financial crises whereupon the relationship begins to break down.
Figure 3: Nominal Wage: ONS; 'EARN01', 2018. Productivity: TED, 2017.
Productivity is also strongly linked with other basic measures of welfare, such as mortality rates and life expectancy - these relationships are demonstrated in Figures 4 and 5. The strongest of these correlations, however, tends to stem from developing countries where the marginal rate of return on supplying an extra unit of electricity tends to be quite high.
Figure 4 & 5: Tenreyro, 2018.
Overall, productivity is a statistic that we should all pay attention to. It is certainly not the be all and end all, but it provides an interesting insight in how our lives are improving over time. Faraday Grid's purpose is to deliver sustainable prosperity for everyone, a process in which it is important to see measurable improvements in measures of productivity for the UK and globally.
The following blog posts in this series will explore the relationship between productivity and energy – primarily, energy and its respective fuel sources. Why focus on this topic? Well, productivity growth across the globe has stagnated since the financial crisis in 2007. Germany has managed to return to pre-crisis growth rates, however, other countries have not fared as well – illustrated in Figure 6. The UK has fared especially poorly considering their strong pre-crisis growth rates, which is highlighted in Figure 7.
Figure 6: Total Economy Database [TED], 2018.
There have been a multitude of suggested explanations for this slowdown, ranging from labour hoarding, capital substitution explanations, financial sector slowdowns, inaccurate measurement to innovation/technological developments declining in effectiveness. The majority of such explanations, however, tend to fall short of explaining this stagnation, which has become known as the UK's productivity puzzle.
At the same time electricity prices for the UK have risen 63% – in real terms – between 2004 and 2014, which is shown in Figure 8. When you consider that just about all businesses utilise electricity in some shape or form in their day to day activities, these price increases can drive up the cost of production without an associated increase in output, hence this provides a potential explanation for the stagnation in productivity. Despite this simple correlation very little of the discussion surrounding the UK's productivity puzzle explores or even mentions this potential link.
Figure 8: Ovo Energy, 2015.
The link between energy and productivity is not a new topic, as early as 1960 Schurr noted the relationship between the falling use of energy in production process (energy intensity) and rising labour and total factor productivity (TFP) (Schurr & Netschert, 1960), however, little research has been added since. Energy's relationship with output, however, has been explored further, particularly in reference to the links between oil price shocks and financial recessions.
It is my aim over the next entries to explore the literature on this relationship and to add some thoughts to this ever-growing discussion.
House of Representatives Standing Committee on Economics, (2010). Productivity growth and its importance. In: Inquiry into raising the productivity growth rate in the Australian economy. Australia: The Parliament of the Commonwealth of Australia. p9-29.
Schurr, C. & Netschert, B. (1960). Energy in the American Economy, 1850 – 1975. Johns Hopkins, Baltimore.
Last accessed on the 23rd October, 2018.
Steindel, C. & Stiroh, K. J. (2001). Productivity: What Is It, and Why Do We Care About It? Federal Reserve Bank of New York.
Last accessed on the 24th October, 2018.
Figure also includes productivity data from TED as sourced in Figure 1 &2.